Ibukod ang Mga Direktoryo sa Linux Find

Ibukod Ang Mga Direktoryo Sa Linux Find



Kapag nagtatrabaho sa Linux, maaari kang makakuha ng isang pagkakataon kung saan nais mong mabilis na mahanap ang isang file sa iyong makina. Nag-aalok ang Linux ng iba't ibang mga search command kabilang ang 'find' command na hinahayaan kang makahanap ng isang partikular na file. Ang tanging disbentaha ay ang utos ay naglalabas ng maraming kalat at mga file. Gayunpaman, kung sigurado ka na ang target na file ay wala sa isang ibinigay na direktoryo, maaari mong ibukod ito sa command na 'hanapin' upang bawasan ang output ng paghahanap.

Sinasaklaw ng post na ito kung ano ang command na 'hanapin' at kung paano ito gumagana. Dagdag pa, makikita natin kung paano mo magagamit ang command habang hindi kasama ang mga direktoryo sa Linux. Basahin mo pa!

Paggawa gamit ang Find Command

Ang utos na 'hanapin' sa Linux ay tumutulong na mahanap ang mga file at direktoryo upang maiwasan ang paghahanap ng mga ito nang manu-mano. Ginagamit nito ang sumusunod na syntax:







hanapin ang

Narito ang isang halimbawa kung saan sinusubukan naming maghanap ng file na pinangalanang 'linuxhint.c' sa home directory:





Ang output ay nagbibigay ng ganap na landas upang mahanap ang target na file. Ipagpalagay na gusto naming hanapin ang mga file gamit ang isang pattern. Sabihin nating gusto naming maghanap ng anumang mga text file sa Mga dokumento/ sa aming Linux system. Tinukoy namin ang aming utos tulad ng inilalarawan sa sumusunod:





Tandaan kung paano inilalabas ng command na 'hanapin' ang lahat ng mga direktoryo na naglalaman ng mga text file. Iyan ay isang simpleng halimbawa ng paggamit ng command na 'hanapin' ng Linux.



Paano Ibukod ang Mga Direktoryo sa Linux Find

Kapag isinagawa mo ang utos na 'hanapin', hahanapin nito ang tinukoy na direktoryo at mga subdirectory. Gamitin ang alinman sa sumusunod na tatlong paraan upang ibukod ang isang subdirectory sa paghahanap:

1. Ang Prune Option

Para sa pagpapakita, ginagamit namin ang linuxhint/ . Makikita natin na mayroon itong tatlong subdirectory tulad ng ipinapakita sa sumusunod na larawan:

Kapag ginamit sa -print, nakakatulong ang opsyong 'prune' na ibukod ang anumang mga tinukoy na subdirectory kapag nagtatrabaho sa command na 'hanapin'. Sa nakaraang larawan, maaari naming gamitin ang command na 'hanapin' at ibigay ang landas sa direktoryo ng Linuxhint. Pagkatapos, tukuyin upang ibukod ang dir2 mula sa output ng paghahanap.

Isinasagawa namin ang aming utos tulad ng sumusunod:

hanapin /home/kyle/Desktop/linuxhint/ -path /home/kyle/Desktop/linuxhint/dir2 -prune -o -print

Pansinin kung paano hindi ipinapakita ang dir2 kahit saan sa output na nagpapatunay na nagawa naming ibukod ito.

Maaari din nating isagawa ang parehong command sa isang pinaikling bersyon tulad ng ipinapakita sa sumusunod:

Maaari ka ring magbukod ng maraming direktoryo. Para diyan, ginagamit namin ang -o na opsyon. Ang sumusunod na halimbawa ay hindi kasama ang dir1 at dir3 upang iwanan lamang ang dir2. Kung sigurado ka na ang file o folder na gusto mong hanapin ay wala sa ibang mga direktoryo, binabawasan ng opsyong ito ang output ng paghahanap.

2. Sa pamamagitan ng Opsyon na 'Hindi'.

Sa query sa paghahanap, posibleng magdagdag ng 'hindi' para tukuyin kung aling mga direktoryo ang ibubukod. Ang pagpapatupad nito ay mas tapat kaysa sa opsyon na prune.

Narito ang syntax na gagamitin:

hanapin ang [path] -type f -not -path '*/directory-to-exclude/*'

Ipagpalagay na gusto naming ibukod ang dir1 sa output ng paghahanap na 'hanapin' na ipinatupad namin sa opsyong prune. Isinasagawa namin ang utos tulad ng sumusunod:

hanapin ang . -type f -not -path '*/dir2/*'

Nakukuha namin ang parehong output tulad ng kapag ginagamit ang pagpipiliang prune. Ang tinukoy na direktoryo ay hindi kasama; tanging ang natitirang mga subdirectory lamang ang lalabas sa output ng paghahanap.

3. Sa pamamagitan ng “!” Pagpipilian

Ang huling paraan ng pagbubukod ng mga direktoryo sa command na 'hanapin' ng Linux ay ang pagdaragdag ng '!' operator. Gumagana ito tulad ng 'hindi' operator, at ang syntax nito ay halos magkapareho.

hanapin ang [path] -type f ! -path '*/directory-to-exclude/*'

Ipagpalagay na ulitin natin ang naunang halimbawa upang ibukod ang dir2 gamit ang '!' operator. Nakukuha pa rin namin ang parehong output. Isang seksyon lang ng command na ginagamit namin ang nagbago.

Iyon ang tatlong paraan ng pagbubukod ng mga direktoryo sa command na 'hanapin' ng Linux.

Konklusyon

Ang Linux 'find' command ay madaling gamitin sa mabilis na paghahanap ng mga file at folder. Ito ay nagiging mas mahusay dahil maaari mong ibukod ang mga direktoryo sa iyong command sa paghahanap upang bawasan ang output ng paghahanap. Upang ibukod ang mga direktoryo, maaari mong gamitin ang 'prune', 'hindi', o '!' mga pagpipilian. Tinalakay ng post na ito kung paano gumagana ang tatlong opsyon sa mga ibinigay na halimbawa ng pagbubukod ng mga direktoryo. Subukan!