find
är ett mycket kraftfullt kommando i UNIX- och Linux-baserade system som används för att söka efter filer och kataloger i en katalogstruktur. Det kan anpassas med olika flaggor och argument för att utföra komplexa sökningar. Här är 20 olika sätt att använda find
-kommandot på:
- Hitta filer efter namn:
find /sökväg/till/katalog -name "filnamn.txt"
- Hitta filer som inte matchar ett mönster:
find /sökväg/till/katalog -not -name "*.txt"
- Hitta kataloger:
find /sökväg/till/katalog -type d
- Hitta filer baserat på storlek:
find /sökväg/till/katalog -size +50M
- Hitta och ta bort filer:
find /sökväg/till/katalog -type f -name "*.log" -delete
- Hitta filer ändrade de senaste n dagarna:
find /sökväg/till/katalog -mtime -n
- Hitta filer som ändrades före n dagar sedan:
find /sökväg/till/katalog -mtime +n
- Hitta filer med vissa behörigheter:
find /sökväg/till/katalog -perm 644
- Hitta filer som ägs av en specifik användare:
find /sökväg/till/katalog -user användarnamn
- Hitta filer som tillhör en specifik grupp:
find /sökväg/till/katalog -group gruppnamn
- Kombinera
find
med andra kommandon viaexec
:find /sökväg/till/katalog -type f -exec chmod 644 {} \;
- Hitta filer efter ändringsdatum:
find /sökväg/till/katalog -daystart -mtime -1
- Hitta alla tomma filer och kataloger:
find /sökväg/till/katalog -empty
- Hitta filer baserat på filtyp:
find /sökväg/till/katalog -type f -iname "*.jpg"
- Exkludera en katalog från sökningen:
find /sökväg/till/katalog -path /sökväg/till/katalog/att/utesluta -prune -o -print
- Hitta filer baserat på inodnummer:
find /sökväg/till/katalog -inum 12345
- Hitta filer som är större eller mindre än en viss storlek:
find /sökväg/till/katalog -size +10M -size -50M
- Hitta filer som har ändrats sen sist systemet startades:
find /sökväg/till/katalog -cnewer /var/log/boot.log
- Använd
find
för att kopiera filer till en annan katalog:find /sökväg/till/källkatalog -type f -name "*.jpg" -exec cp {} /sökväg/till/målkatalog \;
- Hitta filer och sortera dem efter ändringsdatum:
find /sökväg/till/katalog -type f -printf '%TY-%Tm-%Td %TT %p\n' | sort
Dessa exempel visar flexibiliteten och kraften hos find
-kommandot. Genom att kombinera olika flaggor och argument kan du utföra nästan alla typer av fil- och katalogsökningar.
Den översätta manual sidan för find finns i våran wiki och en artikel i vår wiki Skillnaden mellan BSD och GNU versionen av kommandot find, som beskriver några skillnade mellan BSD versionen ( Den bl a används av Mac OS ) och GNU versionen som används av Linux.