Cum să găsiți un fișier în Linux folosind linia de comandă

Ce să știi

  • Comanda folosită pentru căutarea fișierelor este apelată găsi. Sintaxa de bază a comenzii find este următoarea: găsi [nume de fișier].
  • După găsi, utilizați o comandă rapidă pentru a specifica directorul: "." pentru folderele imbricate; "/" pentru întregul sistem de fișiere; "~" pentru directorul principal al utilizatorului activ.
  • Folosește expresia -Nume pentru a căuta un nume de fișier. De exemplu: găsi / -nume *.mp3 caută în întregul sistem de fișiere un fișier numit *.mp3.

Acest articol explică ce Linuxgăsi comanda este, oferă comenzi rapide pentru locația de căutare, expresii obișnuite, exemple de utilizări, modele, cum să trimiteți rezultate de la comanda find la un fișier și cum să găsiți și să executați o comandă împotriva unui fișier.

Utilizați comanda „find” pentru a localiza un fișier în Linux

Comanda folosită pentru căutarea fișierelor este apelată găsi.

Sintaxa de bază a comenzii find este următoarea:

găsiți numele fișierului.

Calea activă în prezent marchează locația de căutare, în mod implicit. Pentru a căuta în întreaga unitate, tastați următoarele:

găsi / nume de fișier.

Dacă, totuși, doriți să căutați folderul în care vă aflați în prezent, utilizați următoarea sintaxă:

găsi. nume de fișier.
Găsiți comanda lorem.odt în fereastra Terminal pe Ubuntu Linux

Când căutați după nume pe întreaga unitate, utilizați următoarea sintaxă:

găsi / -name nume de fișier.
  • Prima parte a comenzii find este comanda find.
  • A doua parte este de unde să începeți căutarea.
  • Următoarea parte este o expresie care determină ce să găsești.
  • Ultima parte este numele fișierului de găsit.

Pentru a accesa shell-ul (uneori numit fereastra terminalului) în majoritatea distribuțiilor, faceți clic pe pictograma relevantă sau apăsați Ctrl+Alt+T.

Căutați comenzi rapide pentru locație

Primul argument după comanda find este locația pe care doriți să o căutați. Deși puteți specifica un anumit director, puteți utiliza a metacaracter pentru a servi drept substitut. Cele trei metacaractere care funcționează cu această comandă includ:

  • Perioada (.): Specifică folderul curent și toate folderele imbricate.
  • Slash înainte (/): Specifică întregul sistem de fișiere.
  • Tilde (~): Specifică directorul principal al utilizatorului activ.

Căutarea în întregul sistem de fișiere poate genera erori de acces interzis. Rulați comanda cu privilegii ridicate (prin folosirea comenzii sudo) dacă trebuie să căutați în locuri în care contul dvs. standard nu le poate accesa în mod normal.

Expresii

Cea mai comună expresie pe care o vei folosi este -Nume, care caută numele unui fișier sau folder.

Există, totuși, și alte expresii pe care le puteți folosi:

  • -amin n: fișierul a fost accesat ultima dată +/- n minute în urmă, în funcție de modul în care introduceți ora.
  • -încă mai: ia un alt fișier ca referință pentru a găsi orice fișiere care au fost accesate mai recent și fișierul de referință.
  • -atime n: Fișierul a fost accesat ultima dată mai mult/mai puțin de n zile în urmă, în funcție de modul în care introduceți ora țintă (n).
  • -cmin n: Fișierul a fost modificat ultima dată n minute în urmă, în funcție de modul în care introduceți ora țintă (n).
  • -cnewer: ia un alt fișier ca referință pentru a găsi orice fișiere care au fost accesate mai recent și fișierul de referință.
  • -ctime n: Fișierul a fost accesat ultima dată mai mult/mai puțin de n zile în urmă, în funcție de modul în care introduceți ora țintă (n).
  • -gol:Fișierul este gol.
  • -executabil: Fișierul este executabil.
  • -fals: Întotdeauna fals.
  • - tip fstype: Fișierul se află pe sistemul de fișiere specificat.
  • -gid n: Fișierul aparține grupului cu ID n.
  • -nume grup grup: Fișierul aparține grupului numit.
  • -ilname model: Căutați un link simbolic, dar ignorați cazul.
  • -model de nume: Căutați un fișier, dar ignorați cazul.
  • -inum n: Căutați un fișier cu inodul specificat.
  • -ipath cale: Căutați o cale, dar ignorați cazul.
  • -expresie iregex: Căutați o expresie, dar ignorați cazul.
  • -legături n: Căutați un fișier cu numărul specificat de linkuri.
  • -nume numele: Căutați o legătură simbolică.
  • -mmin n: fișierul a fost accesat ultima dată +/- n minute în urmă, în funcție de modul în care introduceți ora.
  • -mtime n: Fișierul a fost accesat ultima dată mai mult/mai puțin de n zile în urmă, în funcție de modul în care introduceți ora țintă (n).
  • -nume nume: Căutați un fișier cu numele specificat.
  • -nume mai nou: Căutați un fișier editat mai recent decât fișierul de referință dat.
  • - fără grup: Căutați un fișier fără ID de grup.
  • -nouser: Căutați un fișier fără utilizator atașat.
  • -cale cale: Căutați o cale.
  • -lizibil: Găsiți fișiere care pot fi citite.
  • -model regex: Căutați fișiere care corespund unei expresii regulate.
  • -tip tip: Căutați un anumit tip. Opțiunile de tip includ:
    • -tip d: Directoris
    • -tip f: Fișiere
    • -tip l: Legături simbolice
  • -uid uid: ID-ul de utilizator numeric al fișierului este același cu uid.
  • -nume de utilizator: Fișierul este deținut de utilizatorul care este specificat.
  • -inscriptibil: Căutați fișiere în care pot fi scrise.

Exemplu de utilizare a comenzii Find

Iată câteva dintre modalitățile prin care puteți utiliza comanda find.

Cum să găsiți fișiere accesate cu mai mult de un anumit număr de zile în urmă

Pentru a găsi toate fișierele din dosarul dvs. de acasă accesate cu mai mult de 100 de zile în urmă:

găsi ~ -atime +100.

Cum să găsiți fișiere și foldere goale

Pentru a găsi toate fișierele și folderele goale din sistemul dvs.:

găsi / -gol.

Cum să găsiți toate fișierele executabile

Pentru a găsi toate fișierele executabile de pe computer:

găsi / -executable.

Cum să găsiți toate fișierele care pot fi citite

Pentru a găsi toate fișierele care pot fi citite:

găsi / -lizibil.

Modele

Când căutați un fișier, puteți utiliza un model. De exemplu, căutați toate fișierele cu extensia mp3:

găsi / -nume *.mp3.

În funcție de shell-ul pe care îl utilizați, poate fi necesar să scăpați de asterisc. Dacă rulați comanda și nu obțineți rezultatele pe care le așteptați, încercați să citați întregul model pentru a scăpa de asterisc, așa: găsi / -nume „*.mp3”

Terminalul din Ubuntu Linux afișează comanda „ find -name *.mp3”

Cum se trimite ieșirea de la comanda Găsire la un fișier

Principala problemă a comenzii find este că uneori poate returna prea multe rezultate pentru a fi văzute dintr-o singură mișcare. Conducte de ieșire la comanda coadă, sau scoateți liniile într-un fișier după cum urmează:

find / -name *.mp3 -fprint nameoffiletoprintto.

Cum să găsiți și să executați o comandă împotriva unui fișier

Pentru a căuta și edita un fișier în același timp, tastați:

find / -name filename -exec nano '{}' \;

Comanda de mai sus caută un fișier numit filename și apoi rulează editorul nano pentru fișierul pe care îl găsește.

Nano este numele unei comenzi, nu o parte exactă a acestei sintaxe.