Linux find kommandoen er en av de viktigste og hendige kommandoene i Linux-systemer. Det kan, som navnet antyder, finne filer på Linux-PCen din basert på stort sett hvilke vilkår og variabler du angir. Du kan finne filer etter tillatelser, brukere, grupper, filtype, dato, størrelse og andre mulige kriterier ved hjelp av find kommandoen.

find kommandoen er tilgjengelig på de fleste Linux distro som standard, slik at du ikke trenger å installere en pakke for den.

I denne opplæringen vil vi vise deg hvordan du finner filer på Linux ved hjelp av ulike vanlige kombinasjoner av søkeuttrykk i kommandolinjen.

Finn filer etter navn i gjeldende kataloger

Den mest åpenbare måten å søke etter filer på er etternavn. For å finne en fil med navn i gjeldende katalog, kjør:

 finn. -name photo.png 

Hvis du vil finne en fil med navn som inneholder både store og små bokstaver, kjør:

 finn. -iname photo.png 

Hvis du vil finne en fil i rotkatalogen, prefiks søket ditt med sudo som vil gi deg alle tillatelser som kreves for å gjøre det, og også '/' -symbolet som forteller at Linux skal søke i rotkatalogen. Endelig viser uttrykket -print katalogene til søkeresultatene dine. Hvis du leter etter Gzip, skriver du:

 sudo finne / -navn gzip-print 

Finn filer under bestemt katalog

Hvis du vil finne filer under en bestemt katalog som "/ home", kjør:

 finn / hjemnavn filnavn.txt 

Hvis du vil finne filer med utvidelsen ".txt" under "/ home" -katalogen, kjør:

 finn / hjemme-navn * .txt 

For å finne filer hvis navn er "test.txt" under flere kataloger som "/ home" og "/ opt, " run:

 finn / hjem / opt-name test.txt 

For å finne skjulte filer i katalogen "/ home", kjør:

 finn / hjemme-navn ". *" 

For å finne en enkelt fil kalt "test.txt" og fjern den, kjør:

 finn / hjemme -type f-name test.txt -exec rm -f {} 

For å finne alle tomme filer under "/ opt" -katalogen, kjør:

 finn / opt -type f -empty 

Finn kataloger som bruker navn

Hvis du vil finne alle kataloger hvis navn er "testdir" under "/ home" -katalogen, kjør:

 finn / hjemme-type d-name testdir 

For å arkivere alle tomme kataloger under "/ home, " run:

 finn / hjem -type d -empty 

Finn filer med visse tillatelser

find kommandoen kan brukes til å finne filer med en bestemt tillatelse ved hjelp av perm alternativet.

For å finne alle filer hvis tillatelser er "777" i "/ home" -katalogen, kjør:

 finn / hjemme -type f-perm 0777-utskrift 

For å finne alle filene uten tillatelse "777, " løp:

 finn. -type f! -perm 777 

For å finne alle skrivebeskyttede filer, kjør:

 finn / hjemme-perm / u = r 

For å finne alle kjørbare filer, kjør:

 finn / hjemme-perm / a = x 

For å finne alle de klistrede bitfilene hvis tillatelser er "553, " kjør:

 finn / hjemme-perm 1553 

For å finne alle SUID-angitte filer, kjør:

 finn / hjemme-perm / u = s 

For å finne alle filer hvis tillatelser er "777" og endre deres tillatelser til "700, " kjør:

 finn / hjemme -type f -perm 0777 -print -exec chmod 700 {}; 

Finn filer og kataloger basert på dato og klokkeslett

For å finne alle filene under "/ opt" som er endret tjue dager tidligere, kjør:

 finn / opt-mtime 20 

For å finne alle filene under "/ opt" som er åpnet tjue dager tidligere, kjør:

 finn / opt-tid 20 

For å finne alle filene under "/ opt" som er endret mer enn tretti dager tidligere og mindre enn fiffy dager etter:

 finn / opt-mtime +30 -mtime -50 

For å finne alle filene under "/ opt" som endres de siste to timene, kjør:

 finn / opt-cmin -120 

Finn filer og kataloger basert på størrelse

For å finne alle 10MB-filene under "/ home" -katalogen, kjør:

 finn / hjemme-størrelse 10m 

For å finne alle filene under "/ home" katalogen som er større enn 10 MB og mindre enn 50 MB, kjør:

 finn / hjemme-størrelse + 10m-størrelse-50m 

For å finne alle ".mp4" -filer under "/ home" -katalogen med mer enn 10 MB og slette dem med en enkelt kommando, kjør:

 finn / hjemme -type f-name * .mp4-size + 10M -exec rm {}; 

Konklusjon

Og det er det - en sunn liste over måter å finne hvilke filer du leter etter på Linux. Det kan ikke være så enkelt som ditt rudimentære Windows-søk, men det er mye mer detaljert og spesifikt. Er det noen kommandoer her som vi savnet? Gi oss beskjed i kommentarene!

Bilde kreditt: Kontroll av DepositPhotos