Sådan finder du en fil i Linux med Find Command
Linux find
kommandoen er en af de vigtigste og brugbare kommandoer i Linux-systemer. Det kan, som navnet antyder, finde filer på din Linux-pc baseret på stort set uanset hvilke betingelser og variabler du har angivet. Du kan finde filer efter tilladelser, brugere, grupper, filtype, dato, størrelse og andre mulige kriterier ved hjælp af find
kommandoen.
find
kommandoen er som standard tilgængelig på de fleste Linux-distroer, så du behøver ikke at installere en pakke til den.
I denne vejledning viser vi dig, hvordan du finder filer på Linux ved hjælp af forskellige fælles kombinationer af søgeudtryk på kommandolinjen.
Find filer efter navn i aktuelle mapper
Den mest oplagte måde at søge på filer er ved navn. For at finde en fil ved navn i det aktuelle bibliotek, kør:
Find . -name photo.png
Hvis du vil finde en fil med navn, der indeholder både store og små bogstaver, skal du køre:
Find . -iname photo.png
Hvis du vil finde en fil i rodmappen, skal du prefixere din søgning med sudo
som giver dig alle tilladelser, der kræves for at gøre det, og også '/' symbolet, der fortæller Linux at søge i rodmappen. Endelig viser udtrykket -print
katalogerne for dine søgeresultater. Hvis du ledte efter Gzip, ville du skrive:
sudo find / -name gzip -print
Find filer under bestemt katalog
Hvis du vil finde filer under en bestemt mappe som "/ home", skal du køre:
find / hjemnavn filnavn.txt
Hvis du vil finde filer med ".txt" -udvidelsen under "/ home" -mappen, skal du køre:
find / hjemnavn * .txt
For at finde filer, hvis navn er "test.txt" under flere mapper som "/ home" og "/ opt, " run:
find / home / opt -name test.txt
For at finde skjulte filer i mappen "/ home", kør:
find / home-name ". *"
For at finde en enkelt fil, der hedder "test.txt" og fjerne den, skal du køre:
find / home -type f -name test.txt -exec rm -f {}
For at finde alle tomme filer under "/ opt" -mappen, kør:
find / opt -type f -empty
Find mapper, der bruger navn
Hvis du vil finde alle mapper, hvis navn er "testdir" under "/ home" -kataloget, skal du køre:
find / home -type d-name testdir
Hvis du vil filere alle de tomme mapper under "/ home", skal du køre:
find / home -type d -empty
Find filer med visse tilladelser
find
kommandoen kan bruges til at finde filer med en bestemt tilladelse ved hjælp af perm
indstillingen.
For at finde alle filer, hvis tilladelser er "777" i "/ home" -mappen, skal du køre:
find / home -type f -perm 0777 -print
For at finde alle filer uden tilladelse "777, " Kør:
Find . -type f! -perm 777
For at finde alle læsede filer, kør:
find / home -perm / u = r
For at finde alle eksekverbare filer, kør:
find / home -perm / a = x
For at finde alle de klistrede sæt filer, hvis tilladelser er "553, " Kør:
find / home-perm 1553
For at finde alle SUID-indstillede filer, kør:
find / home -perm / u = s
For at finde alle filer, hvis tilladelser er "777" og ændre deres tilladelser til "700, " Kør:
find / home -type f -perm 0777 -print -exec chmod 700 {};
Find filer og mapper baseret på dato og klokkeslæt
For at finde alle filerne under "/ opt", som er ændret tyve dage tidligere, kør:
find / opt -mtime 20
For at finde alle filerne under "/ opt", der er tilgængelige tyve dage tidligere, kør:
find / opt -atime 20
For at finde alle filerne under "/ opt", som er ændret mere end tredive dage tidligere og mindre end fiffy dage efter:
find / opt -mtime +30 -mtime -50
For at finde alle filerne under "/ opt", som ændres i de sidste to timer, skal du køre:
find / opt -cmin -120
Find filer og mapper baseret på størrelse
For at finde alle 10MB-filer under "/ home" -kataloget, kør:
find / home-size 10M
For at finde alle filerne under "/ home" -kataloget, der er større end 10 MB og mindre end 50 MB, skal du køre:
find / home-size + 10M-size -50M
For at finde alle ".mp4" -filer under "/ home" -mappen med mere end 10 MB og slet dem med en enkelt kommando, kør:
find / home -type f -name * .mp4-size + 10M -exec rm {};
Konklusion
Og der er det - en sund liste over måder at finde de filer, du leder efter på Linux. Det kan ikke være så enkelt som din rudimentære Windows søgning, men det er meget mere detaljeret og specifikt. Er der nogen kommandoer her, vi savnede? Lad os vide i kommentarerne!
Billedkredit: Kontrol af DepositPhotos