Hvordan søke og finne filer rekursivt i Linux

Hvordan søke og finne filer rekursivt i Linux
Denne korte opplæringen forklarer hvordan du søker og finner filene rekursivt i Linux -operativsystemene.

Etter å ha lest denne artikkelen, vil du kunne finne en hvilken som helst fil rekursivt ved å bruke de forskjellige teknikkene, inkludert et enkelt filsøk, flere filer -søk, finne filer etter tillatelser og mer. Dette dokumentet er optimalisert for både nye og erfarne Linux -brukere. Alle metodene er gyldige for hver Linux -distribusjon.

Alle eksempler i denne opplæringen inneholder skjermbilder for å gjøre det enkelt for enhver Linux -bruker å forstå og reprodusere dem.

Finne filer rekursivt i Linux

Find -kommandoen trenger ikke flagg for å søke på filene rekursivt i den gjeldende katalogen. Du trenger bare å definere hovedkatalogen og filnavnet ved hjelp av -Navn alternativ. Denne kommandoen vil søke i filen i hovedkatalogen og alle underkataloger.

Syntaksen er enkel, som vist i følgende:

Finn -navn

Hvis du vil finne 27.jpg Fil i hjemmekatalogen og underkatalogene, kjør følgende kommando som vist på følgende skjermbilde:

Finn ~/ -navn 27.jpg

Som du kan se, ble filen funnet i /hjemme/linuxhint/nedlastinger/gjentagelse underkatalog.

Et alternativ til den forrige kommandoen er tre Kommando vist i følgende eksempel der du søker på den samme filen som heter 27.jpg Innenfor gjeldende katalog:

Tree -p 27.jpg

Som du ser i forrige figur, er formatet ganske annerledes. Det ser ut til å være mer brukervennlig eller hyggeligere så lenge du ikke trenger å kopiere hele veien for å lime den.

Følgende skjermbilde viser hvordan du bruker Find -kommandoen til rekursivt å søke mer enn en fil.

Syntaksen for å søke på flere filer rekursivt er følgende:

finne . \ (-navn -o -navn "\)

Merk at det er en -o Flagg før det andre filnavnet. Du kan legge til mer enn en fil ved å legge til mer -o -Navn flagg. For å finne 4 filer med samme kommando, bruk for eksempel følgende syntaks: for eksempel:

finne . \ (-navn -o -name -o -navn "\)

I det praktiske eksemplet beskrevet i følgende bilde, bruk denne kommandoen til å finne en fil som heter 27.jpg og en fil hvis navn begynner med "DIAGRAM”Men uten å spesifisere utvidelsen. Bruk i stedet et jokertegn (*) for å finne noen som er navngitt fil DIAGRAM uavhengig av sin type.

finne . \ (-navn 27.jpg -o -navn "Diagram*" \)

Som du ser i forrige bilde, ble begge filene funnet rekursivt.

Det neste eksemplet beskriver hvordan du finner filene i forlengelse av finne kommando. I den følgende figuren kan du se hvordan du rekursivt kan finne alle .jpg Filer ved hjelp av jokertegn igjen. Syntaksen er ganske enkel:

Finn ~/ -Type F -Name "*.""

Dermed for å finne alle .jpg Filer rekursivt, kjør følgende kommando:

Finn ~/ -Type F -Name "*.JPG "

Som vist i forrige bilde, er alle JPG -filene inkludert banen deres oppført med hell. Du kan erstatte .JPG -utvidelse for enhver utvidelse du vil søke på som .png, .tekst, .c og mer.

La oss anta at du ikke vil finne en fil, men en katalog rekursivt. Alt du trenger å gjøre er å bruke den samme kommandoen som ble vist i det første eksemplet på denne opplæringen, og legg deretter til -type d alternativ. Syntaksen som følger:

Finn ~/ -Type D -Navn

I følgende praktiske eksempel, bruk forrige syntaks for å finne Recur katalog.

Finn ~/ -Type D -Name Recur

Som du ser i forrige figur, ble katalogen som heter “Recur” funnet vellykket.

Du kan også finne filene etter størrelse ved å bruke følgende syntaks, hvor er hovedkatalogen som inneholder underkatalogene og er størrelsen på filene du kan liste opp med deres fulle ban.

sudo finn -størrelse

Følgende eksempel beskriver hvordan du finner 10 MB -størrelsesfilene. Du kan erstatte m definerende enheter i MB med c for byte, w for to to byteord, k for kibytter og G for gibibytter (merknadsenheter er saksfølsomme).

For å finne de 10 Mebibytes -filene, utfør følgende kommando:

sudo finn /var -størrelse 10m

Alle 10m -filene ble oppført riktig med banene.

Syntaksen for å finne filene basert på tillatelsene deres vises i følgende:

Finn ~ Perm

La oss anta at du vil identifisere og liste opp filene med lese, skrive og utføre tillatelser (777). Kommandoen om å kjøre er følgende:

Finn ~/ -Perm 777

Det siste eksemplet på denne opplæringen viser hvordan du finner og lister opp filene og katalogene etter størrelse.

du -hs ~/*

Som vist er filene oppført etter størrelse med riktige enheter. 0 -størrelseskatalogene og filene er tomme.

Konklusjon

Linux allsidighet og fleksibilitet gjør det mulig å finne filene (og andre funksjoner) rekursivt på mange måter. De kan enkelt utføres av alle Linux -brukerne uavhengig av kunnskapsnivået hans, fra de nye brukerne til systemadministratorene. Alle teknikker som tidligere er beskrevet er gyldige for alle Linux -distribusjoner og til og med til noen UNIX -systemer. I følge deres mannssider kan noen flagg variere i noen distribusjoner, men de fleste av dem er universelle. I tilfelle Linux -distribusjonen din ikke samsvarer med noen av de tidligere forklarte kommandoene, kan du lese mannsiden. Det anbefales på det sterkeste for leserne å praktisere eksemplene for å innlemme denne kunnskapen.

Tusen takk for at du leste denne Linux -opplæringen. Fortsett å følge oss for mer Linux profesjonelle tips.