Linux, renumit pentru interfața sa robustă de linie de comandă, oferă o suită de instrumente puternice pentru gestionarea eficientă a fișierelor și a directoarelor. Dintre acestea, comanda find se remarcă ca un atu indispensabil, oferind o versatilitate de neegalat în căutarea fișierelor pe baza diverselor criterii. Acest articol explorează priceperea comenzii find, aruncând lumină asupra capacităților sale și asupra modului în care servește ca instrument de utilizare pentru utilizatorii Linux care doresc să localizeze fișierele rapid și eficient.
Cuprins
- Ce este comanda Find în Linux?
- Sintaxa comenzii Find în Linux:
- Opțiuni disponibile în Find Command în Linux
- Cum să găsiți un fișier în Linux din linia de comandă
- Exemple de comandă Find în Linux
Ce este comanda Find în Linux?
Comanda find în Linux este un utilitar dinamic conceput pentru căutări complete de fișiere și directoare în cadrul unei structuri ierarhice. Adaptabilitatea sa permite utilizatorilor să caute după nume, dimensiune, timp de modificare sau conținut, oferind o soluție flexibilă și puternică. Ca o componentă esențială a Linia de comandă Linux set de instrumente, comanda find răspunde nevoilor nuanțate ale utilizatorilor, asigurând precizie în explorarea și recuperarea fișierelor. Descoperiți diversele funcționalități ale comenzii find și îmbunătățiți-vă managementul fișierelor eficienta pe platforma Linux.
Sintaxa Find Command în Linux :
Iată sintaxa pentrufind>comandă în Linux:
find [path] [options] [expression]>
Aici,
- cale: Directorul de pornire pentru căutare.
- Exemplu :
find /path/to/search>
- Exemplu :
- Opțiuni: Setări sau condiții suplimentare pentru căutare.
- Exemplu :
find /path/to/search -type f -name '*.txt'>
- Exemplu :
- expresie: Criterii de filtrare și localizare a fișierelor.
- Exemplu :
find /path/to/search -type d -name 'docs'>
- Exemplu :
Această sintaxă vă permite să vă personalizați căutarea fișierelor prin specificarea căii, adăugarea de opțiuni și definirea criteriilor de căutare folosind expresii.
Opțiuni disponibile în Find Command în Linux
Aici sunt ` find`> opțiunile de comandă împreună cu scurte descrieri ale scopurilor acestora.
| Comanda gratuit vs gratuit | Descriere |
|---|---|
| -model de nume | Caută fișiere cu un anumit nume sau model. |
| -tip tip | Specifică tipul de fișier de căutat (de exemplu, f pentru fișiere obișnuite, d pentru directoare). |
| -dimensiune [+/-]n | Caută fișiere în funcție de dimensiune. ` |
| -mtime n | Găsește fișiere pe baza timpului de modificare. ` |
| -exec comanda {} ; | Executează o comandă pentru fiecare fișier găsit. |
| -imprimare | Afișează căile fișierelor care corespund criteriilor specificate. |
| -niveluri de adâncime maximă | Limitează căutarea la o adâncime de director specificată. important |
| -nivelurile de profunzime mentală | Specifică adâncimea minimă a directorului pentru căutare. |
| -gol | Găsește fișiere și directoare goale. |
| -șterge | Șterge fișierele care corespund criteriilor specificate. |
| -execdir comanda {} ; | Executează o comandă pentru fiecare fișier găsit, din directorul care conține fișierul potrivit. |
| -model de nume | Versiunea ` care nu face distincție între majuscule și minuscule |
Cum să găsiți un fișier în Linux din linia de comandă
Folosindfind>comanda este simplă. Pentru a găsi un fișier în Linux, deschideți un terminal și utilizați următoarele sintaxa de baza:
find /path/to/search -options criteria>
A inlocui /path/to/search> '>cu directorul în care doriți să începeți căutarea și să personalizați opțiunile și criteriile în funcție de cerințele dvs.
De exemplu :
Pentru a găsi un fișier numit example.txt în directorul principal, ați folosi:
find ~ -name 'example.txt'>
Această comandă va localiza și afișa calea către fișier dacă acesta există în directorul specificat sau în subdirectoarele acestuia.
Exemple de comandă Find în Linux
1. Cum să găsiți un fișier specific folosind comanda `find` în Linux
Această interogare este concepută pentru a identifica un fișier dintr-un director desemnat. În exemplul oferit, caută un fișier numit sample.txt în directorul GFG.
find ./GFG -name sample.txt>
Thefind>comanda traversează directorul specificat (./GFG>) și caută un fișier numit sample.txt. Dacă este găsit, afișează calea către fișier.
Ieșire:

Căutați un fișier cu un nume specific
2. Cum să căutați fișiere cu un model folosind comanda `find` în Linux
Această comandă este adaptată pentru descoperirea fișierelor dintr-un director care aderă la un anumit model de denumire. În acest caz, identifică fișierele care se termină cu „.txt” în directorul GFG.
find ./GFG -name *.txt>
Comanda caută fișiere cu nume care se termină în „.txt” în directorul GFG, prezentând o listă de fișiere care se potrivesc.
Ieșire:
utilizarea internetului

Căutați un fișier cu model
3. Cum să găsiți și să confirmați ștergerea fișierului folosind comanda `find` în Linux
Această comandă nu numai că localizează un fișier specificat, dar solicită și utilizatorului confirmarea înainte de a iniția ștergerea acestuia. Exemplul încearcă să ștergă un fișier numit sample.txt din directorul GFG.
find ./GFG -name sample.txt -exec rm -i {} ;> The-exec>opțiunea executărm>comanda pe fișierul localizat și-i>flag solicită utilizatorului confirmarea înainte de ștergere. Când această comandă este introdusă, va veni un prompt pentru confirmare, dacă doriți să ștergeți sample.txt sau nu. dacă introduceți „Y/y” va șterge fișierul.
Ieșire:

găsiți și ștergeți un fișier cu confirmare
4. Căutați fișiere și directoare goale folosind comanda `find` în Linux
Această interogare este adaptată pentru descoperirea și listarea fișierelor și directoarelor goale dintr-un director specificat.
find ./GFG -empty>
` find`> comanda identifică și listează toate folderele și fișierele goale din directorul GFG sau subdirectoarele acestuia.
Ieșire:

Căutați fișiere și directoare goale
5. Căutați fișiere cu permisiuni specifice utilizând comanda `find` în Linux
Această comandă este folosită pentru a localiza fișiere într-un director care au anumite permisiuni . În exemplul oferit, identifică fișierele cu permisiunile setate la 664 în directorul GFG.
find ./GFG -perm 664>
Comanda caută fișiere din directorul GFG cu permisiunile specificate (664) și afișează rezultatele.
Ieșire:

Căutați fișierul cu permisiunile introduse
6. Afișați ierarhia depozitului folosind comanda `find` în Linux
Această comandă este utilizată pentru a afișa structura ierarhică a depozitelor și sub-depozitelor dintr-un director dat.
find . -type d>
Această comandă afișează toate depozitele și sub-depozitele prezente în depozitul curent. În exemplul de mai jos, ne aflăm în prezent într-un depozit, și anume techcodeview.com, care conține un repo Linux, care conține sub-repo LinuxCmds care conține în plus un repo FindCmd. Ieșirea cmd-ului de mai jos afișează pur și simplu aceste informații. Vă rugăm să rețineți că, în acest caz, dacă veți folosi ls cmd, va afișa doar /Linux.
Ieșire:

bash else if
7. Căutați text în mai multe fișiere folosind comanda `find` în Linux
Această comandă este adaptată pentru a găsi linii care conțin text specific în mai multe fișiere. Exemplul caută linii care conțin cuvântul „Geek” în toate fișierele „.txt” din actualul director și subdirectoarele sale.
find ./ -type f -name '*.txt' -exec grep 'Geek' {} ;> Comanda caută fișiere „.txt” (-type f>și-name '*.txt'>) și utilizărigrep>pentru a imprima linii care conțin textul specificat („Geek”).
Ieșire:

Căutați text în mai multe fișiere
8. Găsiți fișierele după momentul în care au fost modificate Folosind comanda `find` în Linux
The-mtime>opțiunea este la îndemână pentru a găsi fișiere în funcție de timpul de modificare a acestora. Pentru a găsi fișiere modificate în ultimele 7 zile, puteți utiliza:
find /path/to/search -mtime -7>
Această comandă va lista fișierele modificate în ultima săptămână.

Găsirea ultimelor modificări
În acest exemplu, căutăm modificări în directorul /home/administrator/Descărcări care au fost efectuate în ultimele 7 zile.
9. Utilizați Grep pentru a găsi fișiere pe baza conținutului Folosind comanda `find` în Linux
Combinând celefind>comanda cu grep> vă permite să căutați fișiere în funcție de conținutul acestora. De exemplu, pentru a găsi fișiere care conțin modelul de cuvinte în directorul curent și subdirectoarele acestuia, puteți utiliza:
find . -type f -exec grep -l 'pattern' {} ;> Această comandă va afișa numele fișierelor care conțin conținutul specificat.
selectați mai multe table sql
Defalcarea comenzii:
-
find .>: Inițiază căutarea din directorul curent (.>). -
-type f>: Specifică faptul că căutarea este numai pentru fișiere, cu excepția directoarelor. -
-exec grep -l 'pattern' {} ;>: executăgrep>comandă pentru fiecare fișier găsit ({}>) pentru a căuta conținutul specificat (model). The-l>opțiunea îngrep>se asigură că sunt afișate numai numele fișierelor care conțin modelul.
Executarea comenzii:
- The
find>comanda începe căutarea din directorul curent, inclusiv toate subdirectoarele acestuia. - Pentru fiecare fișier (
-type f>) găsit în căutare, the-exec>opțiunea executăgrep>comanda. - The
grep>comanda caută conținutul specificat (modelul) în fiecare fișier. - Dacă un fișier conține conținutul specificat, numele său este afișat din cauza
-l>opțiunea îngrep>.
Întrebări frecvente în Find Command în Linux
Pot folosi comanda find pentru a căuta fișiere pe baza conținutului lor în Linux?
Da, comanda find poate fi combinată cu grep pentru a căuta fișiere pe baza conținutului acestora. Articolul oferă un exemplu de utilizare a acestei combinații pentru a localiza fișiere care conțin text specific.
Cum pot căuta toate directoarele din Linux folosind comanda find?
Folosește
-type d>opțiunea de a specifica că căutați directoare. De exemplu:find /path/to/search -type d>The
-type d>flag indică comenzii find să caute directoare. Această comandă va afișa o listă cu toate directoarele din calea specificată.
Cum pot căuta fișiere cu un nume specific folosind comanda find în Linux?
Pentru a căuta fișiere cu un anumit nume, puteți utiliza
-name>opțiunea cu comanda find. Articolul include un exemplu de sintaxă pentru găsirea unui fișier numit example.txt în directorul principal.
Pot folosi comanda find pentru a căuta fișiere care conțin un anumit șir de text în conținutul lor?
Da, puteți combina comanda find cu grep pentru a căuta fișiere pe baza conținutului lor. De exemplu:
find /path/to/search -type f -exec grep -l 'specific_text' {} ;>Această comandă execută grep pe fiecare fișier găsit (
{}>) în căutare, căutând textul specificat (text_specific). The-l>opțiunea din grep asigură că sunt afișate numai numele fișierelor care conțin textul specificat.
Comanda find ține cont de majuscule și minuscule atunci când căutați fișiere în Linux?
În mod implicit, comanda find face distincția între majuscule și minuscule. Cu toate acestea, articolul prezintă
-iname>opțiunea ca versiune a majusculelor și majusculelor-name>, permițând utilizatorilor să caute fișiere cu un anumit nume sau model, indiferent de caz.
Concluzie
În acest articol am discutat despre comanda find, care este ca un ghid de încredere pentru găsirea și gestionarea fișierelor. Acest articol a explorat modul în care comanda find poate localiza fișiere pe baza diferitelor criterii, de la nume la conținut. Este ca și cum ai avea o superputere pentru a organiza și a căuta prin fișierele într-un mod rapid și flexibil. Indiferent dacă sunteți un utilizator Linux experimentat sau abia la început, stăpânirea comenzii find este un schimbător de joc pentru gestionarea eficientă a fișierelor pe linia de comandă. Este un instrument indispensabil care face ca navigarea în fișierele computerului să fie o ușoară!