3 moduri de a găsi un fișier în Linux

Cuprins:

3 moduri de a găsi un fișier în Linux
3 moduri de a găsi un fișier în Linux

Video: 3 moduri de a găsi un fișier în Linux

Video: 3 moduri de a găsi un fișier în Linux
Video: Protect Your Devices From Unauthorized Access! 2024, Mai
Anonim

Găsirea unui fișier într-un sistem Linux poate fi dificilă dacă nu știți cum. Cel mai bun mod de a găsi fișiere este de a utiliza mai multe comenzi de terminal diferite. Stăpânirea acestor comenzi vă poate oferi un control complet asupra fișierelor dvs. și sunt mult mai puternice decât funcțiile simple de căutare pe alte sisteme de operare.

Pași

Metoda 1 din 3: Folosirea „localizării”

690519 10 1
690519 10 1

Pasul 1. Instalați

localiza funcționalitate.

Comanda de localizare funcționează, în general, mult mai repede decât găsirea, deoarece funcționează dintr-o bază de date a structurii fișierului dvs. Nu toate distribuțiile Linux vin cu funcționalitatea de localizare instalată, așa că introduceți următoarele comenzi pentru a încerca să o instalați:

  • Tastați sudo apt-get update și apăsați ↵ Enter.
  • Îl puteți instala în Debian și Ubuntu astfel: Tastați sudo apt-get install mlocate și apăsați ↵ Enter. Dacă localizarea este deja instalată, veți vedea că mesajul mlocate este deja cea mai nouă versiune.
  • În Arch Linux, utilizați managerul de pachete pacman: pacman -S mlocate
  • Pentru Gentoo, utilizați emerge: emerge mlocate
690519 11 1
690519 11 1

Pasul 2. Actualizați-vă

localiza Bază de date.

Comanda de localizare nu va putea găsi nimic până când baza sa de date nu va fi construită și actualizată. Acest lucru se întâmplă automat zilnic, dar îl puteți actualiza și manual. Va trebui să faceți acest lucru dacă doriți să începeți să utilizați localizarea imediat.

Tastați sudo updatedb și apăsați ↵ Enter

690519 12 1
690519 12 1

Pasul 3. Folosiți

localiza pentru a efectua căutări simple.

Comanda de localizare este rapidă, dar nu are la fel de multe opțiuni ca comanda de găsire. Puteți efectua o căutare de bază a fișierului în același mod ca și comanda find.

localizați -i "*.jpg"

  • Această comandă vă va căuta în întregul sistem fișiere cu extensia.jpg. Caracterul comodin * funcționează în același mod cu comanda find.
  • La fel ca comanda find, -i ignoră cazul interogării dvs.
690519 13 1
690519 13 1

Pasul 4. Limitați rezultatele căutării

Dacă căutările dvs. returnează prea multe rezultate pentru a le gestiona, le puteți reduce folosind opțiunea -n, urmată de numărul de rezultate pe care doriți să le afișați.

localizați -n 20 -i "*.jpg"

  • Vor fi afișate numai primele 20 de rezultate care corespund interogării.
  • De asemenea, puteți utiliza | pentru a trimite rezultatele la mai puțin pentru a derula ușor.

Metoda 2 din 3: Folosirea „găsiți”

690519 1 1
690519 1 1

Pasul 1. Căutați un fișier după numele acestuia

Aceasta este cea mai simplă căutare pe care o puteți efectua folosind comanda find. Comanda de mai jos va căuta interogarea în directorul curent și în orice subdirectoare.

găsi -iname "nume de fișier"

Utilizarea -iname în loc de -name ignoră cazul interogării dvs. Comanda -name este sensibilă la majuscule și minuscule

690519 2 1
690519 2 1

Pasul 2. Setați căutarea pentru a începe în directorul rădăcină

Dacă doriți să căutați întregul sistem, puteți adăuga / modificatorul la interogare. Acest lucru va spune căutați să căutați toate directoarele începând din directorul rădăcină.

găsi / -nume "nume de fișier"

  • Puteți începe căutarea într-un anumit director înlocuind / cu o cale de director, cum ar fi / home / pat.
  • Puteți utiliza un. în loc de / pentru a forța căutarea să fie efectuată numai în directorul și subdirectoarele curente.
690519 3 1
690519 3 1

Pasul 3. Folosiți caracterul wildcard

* pentru a căuta orice se potrivește cu partea interogării.

Caracterul wildcard * poate fi util pentru a găsi ceva dacă nu știți numele complet sau dacă doriți să găsiți totul cu o extensie specifică.

find / home / pat -iname "*.conf"

  • Aceasta va returna toate fișierele.conf din folderul utilizatorului Pat (și subdirectoare).
  • De asemenea, îl puteți utiliza pentru a găsi tot ceea ce se potrivește cu o parte din numele fișierului. De exemplu, dacă aveți o mulțime de documente legate de wikiHow, le-ați putea găsi pe toate tastând „* wiki *”.
690519 4 1
690519 4 1

Pasul 4. Faceți rezultatele căutării mai ușor de gestionat

Dacă obțineți o mulțime de rezultate ale căutării, poate fi dificil să le verificați. Folosiți | caracter și trimiteți rezultatele căutării la programul de filtrare „mai puțin”. Acest lucru vă poate permite să parcurgeți și să filtrați rezultatele mult mai ușor.

find / home / pat -iname "*.conf" | Mai puțin

690519 5 1
690519 5 1

Pasul 5. Găsiți tipuri specifice de rezultate

Puteți utiliza modificatori pentru a returna doar anumite tipuri de rezultate. Puteți căuta fișiere obișnuite (f), directoare (d), legături simbolice (l), dispozitive de caractere (c) și dispozitive de blocare (b) utilizând modificatorul potrivit.

find / -type f -iname "file name"

690519 6 1
690519 6 1

Pasul 6. Filtrează rezultatele căutării după mărime

Dacă aveți o mulțime de fișiere cu nume similare, dar cunoașteți dimensiunea pe care o căutați, ne puteți filtra rezultatele după mărime.

find / -size + 50M -iname "file name"

  • Aceasta va afișa rezultate de 50 megabyte sau mai mari. Puteți utiliza + sau - pentru a căuta dimensiuni mai mari sau mai mici. Omiterea + sau - va căuta fișiere exact cu dimensiunea specificată.
  • Puteți filtra după octeți (c), kilobiți (k), megaocteți (M), gigaocteți (G) sau blocuri de 512 octeți (b). Rețineți că semnalizatorul de dimensiuni este sensibil la majuscule și minuscule.
690519 7 1
690519 7 1

Pasul 7. Utilizați operatori booleani pentru a combina filtrele de căutare

Puteți utiliza operatorii -și, sau-și nu pentru a combina diferite tipuri de căutări într-una.

find / travelphotos -type f -size + 200k -not -iname "* 2015 *"

Comanda va găsi fișiere în directorul „travelphotos” care au o dimensiune mai mare de 200 kilobyte, dar nu au „2015” nicăieri în numele fișierului

690519 8 1
690519 8 1

Pasul 8. Căutați fișiere după proprietar sau permisiuni

Dacă încercați să găsiți un anumit fișier deținut de un utilizator sau fișiere cu anumite permisiuni, puteți restrânge căutarea.

find / -user pat -iname "file name" find / -group users -iname "file name" find / -perm 777 -iname "file name"

Exemplele de mai sus vor căuta interogarea utilizatorilor, grupurilor sau permisiunilor specificate. De asemenea, puteți omite interogarea cu numele fișierului pentru a returna toate fișierele care se potrivesc cu acel tip. De exemplu, find / -perm 777 va returna toate fișierele cu permisiunile 777 (fără restricții)

690519 9 1
690519 9 1

Pasul 9. Combinați comenzile pentru a efectua acțiuni atunci când sunt găsite fișiere

Puteți combina comanda find cu alte comenzi, astfel încât să le puteți executa pe fișierele returnate de interogare. Separați comanda find și a doua comandă cu steagul -exec, apoi terminați linia cu {};

găsi. -tip f -perm 777 -exec chmod 755 {};

Aceasta va căuta în directorul curent (și în toate subdirectoarele) fișierele care au 777 permisiuni. Apoi va folosi comanda chmod pentru a schimba permisiunile la 755

Metoda 3 din 3: Căutarea textului în fișiere

690519 14 1
690519 14 1

Pasul 1. Folosiți

grep comanda pentru a căuta șiruri de text în fișiere.

Dacă căutați un fișier care conține o anumită frază sau șir de caractere, puteți utiliza comanda grep. O comandă grep de bază este formatată după cum urmează:

grep -r -i "interogare de căutare" / cale / către / director /

  • -R setează căutarea la „recursiv”, deci va căuta în directorul curent și în toate subdirectoarele pentru orice fișier care conține șirul de interogare.
  • -I indică faptul că interogarea nu ține cont de majuscule și minuscule. Dacă doriți să forțați căutarea să acorde atenție cazului, omiteți operatorul -i.
690519 15 1
690519 15 1

Pasul 2. Decupați textul suplimentar

Când efectuați o căutare grep ca mai sus, veți vedea numele fișierului împreună cu textul cu interogarea potrivită evidențiată. Puteți ascunde textul care se potrivește și afișa doar numele fișierelor și căile, incluzând următoarele:

grep -r -i "interogare de căutare" / cale / către / director / | tăiat -d: -f1

690519 16 1
690519 16 1

Pasul 3. Ascundeți mesajele de eroare

Comanda grep va returna o eroare atunci când încearcă să acceseze dosarele fără permisiunile corecte sau rulează în dosare goale. Puteți trimite mesajele de eroare la / dev / null, care le va ascunde de ieșire.

grep -r -i "interogare de căutare" / cale / către / director / 2> / dev / null

Recomandat: