find: Locate Files
grep caută text în interiorul fișierelor. Dar uneori cauți fișierul în sine:
„unde am pus fișierul ăla numit raport.txt?”. Pentru asta există find.
find parcurge un arbore de directoare și listează fișierele care se potrivesc cu
descrierea ta.
Forma de bază este: find UNDE-SĂ-CAUT CONDIȚII.
Căutare după nume: -name
Cea mai folosită condiție este -name, care potrivește fișierele după nume:
find . -name raport.txt
./documente/raport.txt
./arhiva/vechi/raport.txt
. înseamnă „pornește de aici”. find caută în acel folder și în fiecare
sub-folder din el, apoi afișează calea fiecărei potriviri.
Caractere joker
Simbolul * se potrivește cu „orice caractere”. Pune tiparul între ghilimele ca
shell-ul să nu îl extindă mai întâi:
find . -name "*.log"
Astfel găsești fiecare fișier care se termină în .log, oriunde în arbore.
Unde să cauți
Poți să-i indici lui find orice folder, nu doar .:
find jurnale -name "eroare.txt"
find este unealta ta pentru „știu numele, nu și locația”.
Misiune: Localizează și pune la adăpost fișierul clasificat
Serviciul de informații raportează că un document clasificat numit secret.txt
este stocat undeva în arborele directorului tău personal, dar nimeni nu mai
ține minte calea exactă. Odată găsit, trebuie pus la adăpost.
- Caută în tot arborele fișierul numit
secret.txtși afișează-i calea completă. - Caută din nou în arbore fiecare fișier care se termină în
.log, folosind un caracter joker. - Acum că știi unde se află, creează un folder numit
copie-seifși copiază fișierul clasificatdate/seif/secret.txtîn el sub numelesecret-backup.txt.
Rezultat așteptat
Apare calea către secret.txt, apoi fișierele .log, iar folderul copie-seif
conține un backup pus la adăpost al fișierului clasificat.