Ubuntu pretraživanje direktorija. Korištenje Find and Locate za pronalaženje datoteka na Linux serveru

Pozdrav cijeloj habrskoj zajednici.
Ovo je moj prvi post, a nadam se ne i posljednji. Stoga su neizbježni svakakvi nedostaci, bugovi i neka vodenastost teksta, pa vas molim da ne sudite striktno :)
Potaknula me da napišem ovaj post tema "Konzola za početnike." , gdje je ISVir pokrenuo goruću, po mom mišljenju, temu - kako reći novopridošlicama o konzoli na pristupačnom jeziku, a da ih ne preplašiti njenom imaginarnom super-složenošću.

Neću oduzimati paritet ISVir-u, samo ću vam reći o praktičnoj upotrebi nekoliko najosnovnijih „svakodnevnih“ uslužnih programa, bez kojih mi je nemoguć rad u konzoli.

Dakle, šta imamo:

naći- traženje datoteka. omogućava vam da tražite datoteke, direktorije, simbolične veze i druge objekte datoteka. find Omogućava vam da navedete mnoge opcije pretraživanja kao što su:

  • traži po maski (po imenu)
  • kontrola dubine gniježđenja pretraživanja
  • tražiti određene tipove datoteka (direktorij, simbolične veze, utičnice)
  • pretraživanje po vremenu kreiranja/izmjene fajla
  • možete postaviti veličinu (od i do u rasponu) datoteke
  • izvršiti radnje na svakom pronađenom fajlu
U mani za pronalaženje možete pročitati o drugim opcijama i parametrima.

Dakle, odmah - potražite sve fajlove u /etc/ direktorijumu koji su promenjeni u poslednja 24 sata:

$pronađi /etc/ -tip f -mtime -1

Pogledajmo šta smo napisali:

Prvi parametar je uvijek početni direktorij za pretraživanje.
opcija -tip sa parametrom f govori naći, da trebate tražiti samo obične datoteke.
opcija -mtime sa parametrom -1 ukazuje naći da morate pronaći datoteke koje su se promijenile u posljednja 24 sata.
"-" prije 1 postavlja gornju granicu opsega, tj. “sve što se promijenilo u posljednja 24 sata”

Ako smo naznačili "+" prije 1 , To naći bi pronašao sve fajlove koji su promijenjeni od 01/01/1970 do jučer (prije više od jednog dana)
Takođe možete odrediti tačan datum unosom broja bez modifikatora.

Izvršite radnje na pronađenim datotekama.
opcija -exec prihvata liniju sa naredbom koja će se izvršiti za svaku pronađenu datoteku
parametar prosleđen naredbi je označen sa {}
red mora završavati znakovima " \; "

Pogledajmo primjer:
* pronađite u /tmp direktoriju sve datoteke koje su se promijenile u toku prošlog mjeseca i kopirajte ih u direktorij
/tmp/backup/

$pronađi /tmp -tip f -mtime -30 -exec cp () /tmp/backup \;

* izbrišite sve direktorije (rekurzivno) sa zapisnicima imena koji su se promijenili u posljednjem danu u direktoriju
/var/www
$pronađi /var/www -type d -mtime 0 -name logs -exec sudo rm -fr () \;

parametar d u opciji -tip označava samo pretraživanje imenika
opcija -ime traži po imenu.
Ovdje je vrijedno dodati da brisanje datoteka na ovaj način nije optimalno (sporo).
Za brisanje, find ima ugrađenu opciju -delete, koja je za red veličine brža.

Razmotrimo korisnost awk.
awk je programski jezik dizajniran za obradu datoteka. Njegova svrha
razvoj - da se olakša formulisanje i rešavanje mnogih problema vezanih za obradu tekstualnih informacija. U suštini awk je uslužni program dostupan sa konzole.
Iz očiglednih razloga, ovdje neću razmatrati tehnike za pisanje awk koda - reći ću vam samo o jednoj tehnici koja je važna za nas.

Prvo, awk može dobiti podatke sa STDIN-a: $echo "test"|awk ...
drugo, awk je efikasan kada se piše jednostruki tekst u konzoli, jer izvršava kod koji mu je dat kao parametar:


awk dijeli ulazni tok u polja i postavlja ova polja u varijable kao što su $1,$2,..$N
Podrazumevano, separator polja je razmak, ali se koristi opcija -F"_delimiter_" ovo se može poništiti:
$head -4 /etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh

$cat /etc/passwd|awk -F":" "(ispisati $1)"
root
daemon
bin

Na primjer, imamo nekoliko lokacija u /var/www direktoriju. za svaku stranicu postoji direktorij dnevnika, u koji su upisani Apache logovi (za ovu stranicu, a sada želimo da saznamo ukupan volumen ovih dnevnika, kao i da pronađemo sve dnevnike veće od 100Mb).

1.potražite velike zapise:

$pronađi /var/www -tip f -ime “access.log*” -veličina +100M
/var/www/site1/logs/access.log
/var/www/site2/logs/access.log.1.gz

2.izračunati ukupnu zapreminu trupaca:

Pronađite /var/www/ -type f -name "access.log*" -exec du -k () \;|awk "(s+=$1)END(print s)"
5071604


Zato, ne boj se - odmah ću sve objasniti :)

Pronađi sve datoteke po maski (access.log*) i pokreni naredbu za svaku du.
tim du ispisuje veličinu datoteke. opcija -k izlazi u kilobajtima.
zatim se pokreće procesor awk, jednostavno sabira prvo polje nizova (brojeva) u varijablu s i prikazuje vrijednost varijable na ekranu.

Drugi primjer: hajde da pronađemo sve datoteke i direktorije u sistemu koji pripadaju korisniku test1 i izračunajte ukupnu zapreminu.

#find / -user test1 -exec du -sm () \;|awk "(s+=$1)END(print s)"

one. ovdje koristeći opciju -korisnik pronađite pretrage datoteka koje pripadaju korisniku test1 i za svaki fajl/direktorij izračunavamo njegovu veličinu (du komanda)
Zatim awk prima ove podatke putem transportera i, kao što smo uradili gore, izračunava njihov zbir u Kb.

OK. Mislim da je to dovoljno za danas.
Post je ispao prilično velik, očigledno iz navike :)

Odmah želim reći da moj cilj nije bio jednostavno govoriti o upotrebi find i awk, već da dam primjere praktične primjene u stvarnim situacijama.
Ako vam se sviđa članak, nastavit ću pisati u ovom smjeru.

Hvala vam na vašem vremenu.

Problem sa pronalaženjem potrebnih fajlova ili fascikli je bio, jeste i uvek će biti relevantan. Ljudi stalno zaboravljaju gde su tačno sačuvali datoteku koja im je potrebna Crap.doc, ili Super-music.mp3. Stoga, bez obzira na vaš operativni sistem, traženje datoteka ili direktorija uvijek će biti traženo, bilo na Linuxu, Windowsu ili MacOS X-u. Alati za pretraživanje će se jednostavno razlikovati. Pretraživanje u Linuxu može se podijeliti u dvije kategorije: grafičko i konzolno. Počnimo s ponosom svih luniksoida - Terminalom. Postoji divan program za pretraživanje u Linuxu pod nazivom naći.
Format komande find je:
pronađite putanju do direktorija u kojem želite pretraživati ​​- opcije (tipke)
gdje je put direktorij u kojem se traži. Mogu se navesti sljedeće staze:

.
– pretraživanje u trenutnom direktoriju;
/ – pretraživanje iz korijenskog direktorija, tj. kroz ceo sistem;
~ – pretraga u početnom imeniku.

Iako put, naravno, može i bit će drugačiji. Iznad su samo standardne staze.
Dakle, najvažnije opcije naredbe find izgledaju ovako: ime
— pretraživanje datoteka po imenu; korisnik
— traži datoteke koje pripadaju navedenom korisniku; grupa
— traženje datoteka koje pripadaju određenoj grupi; perm
— traženje datoteka sa navedenim načinom pristupa; tip

— tražiti datoteke neke vrste.

  • Takođe postoji mnogo vrsta:
  • b – poseban blok fajl;
  • d – imenik;
  • c – datoteka posebnih simbola;
  • f – redovni fajl;
  • l – simbolička veza;
  • p – imenovana cijev;

s – utičnica.
Veličina n - traži datoteke čija je veličina n jedinica;

-mtime -n +n – traži datoteke koje su promijenile sadržaj prije manje od (-) ili više od (+) dana.
A sada nekoliko primjera korištenja naredbe find.
Najčešće korištena opcija je -name, koja traži datoteke po imenu.

Na primjer, naredba:

pronađi ~ naziv muzike "*.mp3"

će tražiti sve datoteke (simbol *) koje imaju ekstenziju .mp3 u folderu Music, koji se nalazi u vašem početnom direktoriju.

pronađi / -name "*.pdf"

sudo find / -name "*.pdf"

pronađi ~ -name "Fotografija*"

će navesti datoteke u vašem početnom direktoriju počevši slovima Foto.

Prekidač `-name' razlikuje velika i mala slova; Da biste zanemarili ove kriterijume tokom pretrage, potrebno je da koristite opciju '-iname'. Tada će program pronaći sve datoteke koje će se sastojati od slova: Foto, Foto ili FOTO.

Ako želite da se rezultat pretraživanja sačuva u tekstualnoj datoteci, naredba će imati sljedeći oblik:

find ~ -name "Foto*" > results.txt

Ako znate puno ime datoteke, tada bi naredba bila:

find / -name .profile

U ovom slučaju, cijeli sistem će biti tražen za skrivenu datoteku .profile.

Možete tražiti datoteku ako znate dio njenog imena. U ovom slučaju, naredba će biti ovakva:

pronađi /home/dm/Music/Clips/ -name "*uniforma*"

Ako želite pronaći datoteke koje počinju određenim slovima (na primjer, od a do c), onda je bolje koristiti regularne izraze, koji su vrlo zgodni za korištenje:

pronađi / -ime "*"

Ova komanda će moći pronaći sve datoteke na vašem sistemu koje počinju slovima od a do c.

Potražite datoteke sa određenim načinima pristupa

Ako želite pronaći datoteke koje imaju određene načine pristupa, opcija -perm može vam pomoći u tome. Na primjer, pronađimo datoteke čiji je način pristupa 775 i nalaze se u trenutnom direktoriju:

naći . -perm 775

Pretražite fajlove po korisniku ili grupi.

Da biste pronašli datoteku koja pripada određenom korisniku, samo pokrenite sljedeću naredbu:

find / -user comp

Ova komanda će pronaći datoteke na sistemu koje su u vlasništvu korisnika comp.
A da biste pronašli datoteke koje pripadaju određenoj grupi (na primjer group2), pokrenite naredbu:

find / -group group2

Da biste pronašli datoteke nepostojećih korisnika ili grupa, trebate koristiti opcije -nouser i -nogroup:

find / -nouser

find / -nogroup

Potražite datoteke određene vrste

Naredba find ima još jednu korisnu funkciju može pronaći datoteke određenog tipa. Da biste to učinili, koristite prekidač -type. Pronađimo simboličke veze u /etc direktoriju:

pronađi /etc -tip l

Pronađimo listu direktorija koji su prisutni u /mnt/raid folderu

pronađi /mnt/raid -tip d

Pretražite fajlove po veličini.

Prekidač -size vam omogućava da pronađete datoteke veličine koja vam je potrebna.

naći . -veličina 2000k

Ova komanda će pronaći i prikazati datoteke veličine 2 megabajta koje se nalaze u trenutnom direktoriju. A ako, na primjer, trebate pronaći datoteke manje od 500 kilobajta, tada će u ovom slučaju naredba biti ovakva:

naći . -veličina -500k

Ako trebate pronaći datoteke veće od 900 megabajta, naredba će biti sljedeća:

nađi / -veličina +900M

Traženje datoteka pomoću prekidača -mtime

Prekidač -mtime vam omogućava da pronađete datoteke koje su se promijenile u određenom vremenskom periodu.
Na primjer, imamo zadatak da pronađemo fajlove koji se nalaze u folderu /home/dm/Video i koji su se promijenili u posljednjih 10 dana.

pronađi /home/dm/Video -mtime +10

Ako vam je potrebno suprotno, na primjer, da pronađete datoteke koje se nisu mijenjale sedmicu, tada bi naredba bila sljedeća:

pronađi /home/dm/Video -7

U sljedećem članku ću pisati o grafičkim alatima za pretraživanje u Ubuntu Linuxu.

Kada radite u bilo kojem operativnom sistemu, ponekad postoji potreba za korištenjem alata za brzo traženje određene datoteke. Ovo je također relevantno za Linux, tako da će u nastavku biti razmotreni svi mogući načini pretraživanja datoteka u ovom OS-u. I alati za upravljanje datotekama i naredbe koje se koriste u "terminal".

Ako trebate navesti mnogo parametara pretraživanja da biste pronašli datoteku koja vam je potrebna, onda naredba naći nezamjenjiv. Prije nego što razmotrite sve njegove varijacije, vrijedi proći kroz sintaksu i opcije. Ima sljedeću sintaksu:

opcija pronalaženja putanje

Gdje put- ovo je direktorij u kojem će se izvršiti pretraga. Postoje tri glavne opcije za određivanje putanje:

  • / — pretraživanje u korijenskom i susjednom direktoriju;
  • ~ — pretraživanje po matičnom imeniku;
  • ./ — pretražite imenik u kojem se korisnik trenutno nalazi.

Također možete odrediti putanju direktno do samog direktorija u kojem se datoteka navodno nalazi.

Opcije naći ima puno, a zahvaljujući njima možete izvršiti fleksibilne postavke pretraživanja postavljanjem potrebnih varijabli:

  • -ime- izvršite pretragu koristeći naziv elementa koji tražite kao osnovu;
  • -korisnik- traženje datoteka koje se odnose na određenog korisnika;
  • -grupa- traženje određene grupe korisnika;
  • -perm- prikaz datoteka sa navedenim načinom pristupa;
  • -veličina n- pretraga na osnovu veličine objekta;
  • -mtime +n -n- potražite fajlove koji su promijenjeni više od ( +n) ili manje ( -n) prije dana;
  • -tip- traženje datoteka određene vrste.

Postoje i mnoge vrste elemenata koje tražite. Evo njihove liste:

  • b- blok;
  • f- obični;
  • str- imenovana cijev;
  • d- katalog;
  • l- link;
  • s- utičnica;
  • c- simbolično.

Nakon detaljne analize sintakse naredbi i opcija naći Možete ići direktno na ilustrativne primjere. Zbog obilja opcija za korištenje naredbe, primjeri neće biti dati za sve varijable, već samo za one najčešće korištene.

Metoda 1: Pretraživanje po imenu (opcija -name)

Korisnici najčešće koriste opciju pretraživanja sistema -ime, dakle, tu ćemo početi. Pogledajmo nekoliko primjera.

Pretraga po ekstenzijama

Recimo da trebate pronaći datoteku na sistemu sa ekstenzijom ".xlsx", koji se nalazi u imeniku "Dropbox". Da biste to učinili potrebno je da koristite sljedeću naredbu:

pronađi /home/user/Dropbox -name "*.xlsx" -print

Iz njegove sintakse možemo reći da se pretraga vrši u imeniku "Dropbox" ("/home/user/Dropbox"), a željeni objekt mora imati ekstenziju ".xlsx". Zvjezdica označava da će se pretraga izvršiti na svim datotekama ove ekstenzije, bez uzimanja u obzir njihovog imena. "-print" označava da će biti prikazani rezultati pretrage.

Traži po imenu datoteke

Na primjer, želite pretraživati ​​u imeniku "/home" fajl sa imenom "grudice", ali njegovo proširenje nije poznato. U ovom slučaju morate učiniti sljedeće:

find ~ -name "lumpics*" -print

Kao što vidite, simbol koji se ovdje koristi je «~» , što znači da će se pretraga odvijati u početnom imeniku. Opcija poslije "-ime" naznačen je naziv tražene datoteke ( "grudice*"). Zvjezdica na kraju znači da će se pretraga izvršiti samo po imenu, bez uzimanja u obzir ekstenzije.

Traži po prvom slovu imena

Ako se sjećate samo prvog slova imena datoteke, postoji posebna sintaksa komande koja će vam pomoći da je pronađete. Na primjer, želite pronaći datoteku koja počinje slovom od "g" to "l", a ne znate u kojem direktoriju se nalazi. Zatim morate pokrenuti sljedeću naredbu:

find / -name "*" -print

Sudeći po simbolu “/” koji dolazi odmah nakon glavne naredbe, pretraga će se vršiti počevši od korijenskog direktorija, odnosno kroz cijeli sistem. Sledeći deo «*» znači da će tražena riječ početi određenim slovom. U našem slučaju od "g" to "l".

Usput, ako znate ekstenziju datoteke, onda nakon simbola «*» možete to naznačiti. Na primjer, morate pronaći isti fajl, ali znate da ima ekstenziju ".odt". Tada možete koristiti ovu naredbu:

find / -name "*.odt" -print

Metoda 2: Pretraživanje po načinu pristupa (opcija -perm)

Ponekad morate pronaći objekat čije ime ne znate, ali znate koji način pristupa ima. Zatim morate koristiti opciju "-perm".

Prilično je jednostavan za korištenje, potrebno je samo odrediti lokaciju pretraživanja i način pristupa. Evo primjera takve naredbe:

pronaći ~ -perm 775 -print

Odnosno, pretraga se vrši u početnoj sekciji, a objekti koji se pretražuju će imati pristup 775 . Također možete napisati simbol “-” ispred ovog broja, tada će pronađeni objekti imati bitove dozvole od nule do određene vrijednosti.

Metoda 3: Pretraživanje po korisniku ili grupi (opcije -korisnik i -grupa)

Svaki operativni sistem ima korisnike i grupe. Ako želite pronaći objekt koji pripada jednoj od ovih kategorija, možete koristiti opciju "-korisnik" ili "-grupa", odnosno.

Pronađite datoteku prema njenom korisničkom imenu

Na primjer, trebate pronaći u imeniku "Dropbox" fajl "lampe", ali ne znate kako se zove, samo znate da pripada korisniku "korisnik". Zatim morate pokrenuti sljedeću naredbu:

pronađi /home/user/Dropbox -user user -print

U ovoj naredbi ste naveli potreban direktorij ( /home/user/Dropbox), naznačio je da trebate potražiti datoteku koja pripada korisniku ( -korisnik), i naznačio kojem korisniku pripada ovaj fajl ( — pretraživanje datoteka po imenu;).

Traženje datoteke po imenu grupe

Traženje datoteke koja pripada određenoj grupi jednako je jednostavno - samo trebate zamijeniti opciju "-korisnik" na opciju "-grupa" i navedite naziv ove grupe:

pronađi / -grupi gost -ispis

To jest, naznačili ste da želite pronaći datoteku u sistemu koja pripada grupi "gost". Pretraživanje će se odvijati u cijelom sistemu, što je označeno simbolom «/» .

Metoda 4: Potražite datoteku prema njenom tipu (opcija -type)

Pronalaženje elementa određene vrste u Linuxu je prilično jednostavno, samo trebate navesti odgovarajuću opciju ( -tip) i odredite tip. Na početku članka navedene su sve oznake tipa koje se mogu koristiti za pretraživanje.

Na primjer, želite pronaći sve blok datoteke u vašem početnom direktoriju. U ovom slučaju vaša naredba bi izgledala ovako:

find ~ -type b -print

U skladu s tim, naznačili ste da pretražujete po tipu datoteke, o čemu svjedoči opcija "-tip", a zatim odredio njen tip stavljanjem simbola blok datoteke - "b".

Na isti način možete prikazati sve direktorije u željenom direktoriju unošenjem simbola u naredbu "d":

pronađi /home/user -type d -print

Metoda 5: Pretražujte datoteku prema veličini (opcija -size)

Ako je sve što znate o datoteci njena veličina, čak i to može biti dovoljno da je pronađete. Na primjer, želite da pronađete datoteku od 120 MB u određenom direktoriju, da biste to učinili, učinite sljedeće:

pronađi /home/user/Dropbox -veličina 120M -print

Kao što vidite, fajl koji nam je potreban je pronađen. Ali ako ne znate u kojem se direktoriju nalazi, možete pretražiti cijeli sistem tako što ćete navesti korijenski direktorij na početku naredbe:

pronađi / -veličina 120M -print

Ako znate približnu veličinu datoteke, onda postoji posebna komanda za ovaj slučaj. Morate se registrovati "terminal" ista stvar, samo stavite znak prije označavanja veličine datoteke «-» (ako trebate pronaći datoteke manje od navedene veličine) ili «+» (ako je veličina datoteke koju tražite veća od navedene veličine). Evo primjera takve naredbe:

pronađi /home/user/Dropbox +100M -print

Metoda 6: Pronađite datoteku prema datumu izmjene (opcija -mtime)

Postoje trenuci kada je najpogodnije tražiti datoteku prema datumu kada je izmijenjena. Na Linuxu se to radi pomoću opcije "-mtime". Prilično je jednostavan za korištenje, pogledajmo sve na primjeru.

Recimo u folderu "slike" moramo pronaći objekte koji su bili podložni promjenama u posljednjih 15 dana. Evo šta treba da upišete "terminal":

pronađi /home/user/Images -mtime -15 -print

Kao što vidite, ova opcija prikazuje ne samo datoteke koje su se promijenile tokom navedenog perioda, već i foldere. Radi i u suprotnom smjeru - možete pronaći objekte koji su promijenjeni nakon navedenog datuma. Da biste to učinili, morate unijeti znak ispred digitalne vrijednosti «+» :

pronađi /home/user/Images -mtime +10 -print

GUI

Grafičko sučelje znatno olakšava život početnicima koji su upravo instalirali Linux distribuciju. Ova metoda pretraživanja je vrlo slična onoj u Windows-u, iako ne može pružiti sve prednosti koje nudi "terminal". Ali prvo stvari. Dakle, pogledajmo kako tražiti datoteke u Linuxu koristeći grafičko sučelje sistema.

Metod 1: Pretražujte kroz sistemski meni

Sada ćemo pogledati kako pretraživati ​​datoteke kroz Linux sistemski meni. Preduzete radnje će se izvoditi u distribuciji Ubuntu 16.04 LTS, ali uputstva su zajednička za sve.

Možda vam je poznat sljedeći problem: Ne možete pronaći datoteku, ali je negdje na računaru. Tada je naredba find zgodna.

Pitate: Kako ga koristiti? Postoji ogromna man stranica za ovaj program, pogledaćemo neke uobičajene slučajeve.

Možete početi s najjednostavnijim: ako znate naziv datoteke, lako ćete ga pronaći! Sve što treba da uradite je da otkucate find i navedete određeno ime datoteke!

Linux traži datoteke po imenu

Ovo je ista jednostavna naredba:

Nađi -imenuj ljubav
Ako postoji datoteka pod nazivom "love", onda će naredba find locirati datoteku ili više datoteka poput ove:

Jzb@kodos:~$ find -name love ./projects/love jzb@kodos:~$
Na primjer, pretražit ćemo sve datoteke u mp3 formatu i napraviti kompletnu listu u datoteci:

Datoteka /home/artix -iname ".mp3" > ./list.txt

Pretražite datoteke prema dijelu njihovog imena

Zatim ćemo pronaći datoteke u txtx formatu, ne samo datoteke, već i tekstualne datoteke koje sadrže riječ “LEON”:

Fajl /home/artix -iname ".txt" -exec grep -H "LEON" "()" \; > ./list.txt
Odlično, već imamo ispostavilo se da traži Linux fajlove sa rečju"LEON". Na isti način možete ukloniti nepotrebne stvari, i to u pozadini, kako biste mogli nastaviti s radom:

Fajl /home/artix -iname ".bak" -exec rm "()" \; &
To nam olakšava život. Ovo su najjednostavnije stvari, ali u njima ima toliko korisnih stvari.

Traži datoteke po datumu Linux

Pronađi ./ -mmin -10 #datum izmjene manje od 10 minuta pronađi ./ -mtime +1 #datum izmjene više od 24 sata pronađi ./ -type f -atime +10 # vrijeme pristupa više od 10 dana pronađi ./ -type f -amin - 10 #datum izmjene zadnjih 10 minuta

Pronalaženje teksta u Linux datotekama

Često se dešava da morate tražiti tekst u Linux datotekama. Navest ću 2 primjera pretraživanja datoteka: (linux, freebsd) potreban vam je fragment teksta u datotekama:

# pronađi /var/named/ -type f -exec grep "MX" () \; serversnetwork.info. 14400 U MX 10 mail
i još jedno:

# grep -rl "MX" /var/named/ /var/named/serversnetwork.info.db

Pretražite fajlove po veličini
Ponekad možete koristiti druge komande za pretraživanje Linux datoteka. Na primjer, primijetili ste kako je na vašem računaru neki odjeljak počeo da se povećava. Da biste saznali s kojom je datotekom povezana ili koja je mapa puna, možete koristiti sljedeću naredbu:

Pronađi -veličina 95k.
Ovo će pronaći datoteke veličine 95k. Ali ova opcija se koristi vrlo rijetko. Oni uglavnom koriste naredbe koje se mogu koristiti za pronalaženje datoteke veće ili manje od određene veličine. Na primjer, opcija:

Pronađi -veličina +150k
Trebao bi prikazati datoteke veće od 150k. I opcija

Pronađi -veličina -94k
sve što je manje od 94K.

Funkcija -size traži datoteke određene veličine i izgleda ovako kada se izvrši:

$find. -veličina 3500k -štampa
Ova opcija će tražiti datoteke u Linuxu i prikazati ih na ekranu one veličine 3500 kilobajta, koje se nalaze u ovoj fascikli. Ako trebate pronaći datoteke koje su manje od 250 kilobajta, naredba će izgledati ovako:

$find. -veličina -200k -štampa
Ako trebate pronaći datoteke čija je veličina veća od 555 megabajta, onda ćemo koristiti opciju:

$ pronađi / -veličina +555M -print
Možda ću ovdje završiti pisanje svog članka.

Sada ćete možda moći sami tražiti datoteke, pretraživati ​​tekst u Linux datotekama, pretraživati ​​datoteke po datumu!

Hvala svima, ćao!

    Pronađite datoteku po njenom imenu. Ovo najjednostavnije pretraživanje se izvodi pomoću uslužnog programa find. Naredba u nastavku će tražiti datoteku u trenutnom direktoriju i svim njegovim poddirektorijumima.

    find -iname "ime datoteke"

    • Upišite -iname umjesto -name da zanemarite velika i mala slova u unesenom nazivu datoteke. Naredba -name je osjetljiva na velika i mala slova.
  1. Započnite pretraživanje u korijenskom direktoriju. Da biste pokrenuli pretragu širom sistema, dodajte modifikator / u upit. U ovom slučaju, naredba find će tražiti datoteku u svim direktorijima, počevši od korijenskog.

    pronađi / -iname "ime datoteke"

    • Možete započeti pretraživanje u određenom direktoriju; da biste to učinili, zamijenite / sa putanjom direktorija, na primjer /home/max .
    • Može se koristiti. umjesto / za traženje datoteke samo u trenutnom direktoriju i njegovim poddirektorijumima.
  2. Koristite zamjenski simbol.* za pronalaženje datoteka čije ime odgovara dijelu zahtjeva. Koristeći zamjenski znak *, možete pronaći datoteku čije je puno ime nepoznato ili pronaći sve datoteke sa određenim ekstenzijom.

    pronađi /home/max -iname "*.conf"

    • Ova komanda će pronaći sve datoteke sa ekstenzijom .conf u korisničkom Max folderu (i njegovim podfolderima).
    • Koristite ovu naredbu da pronađete sve datoteke čija imena odgovaraju dijelu upita. Na primjer, ako imate mnogo datoteka povezanih s WikiHow na svom računaru, pronađite sve datoteke upisivanjem "*wiki*" .
  3. Olakšajte upravljanje rezultatima pretraživanja. Ako ima previše rezultata pretraživanja, među njima će biti teško pronaći datoteku koja vam je potrebna. Koristite | tako da se rezultati pretrage filtriraju naredbom less. Ovo će olakšati pretraživanje i filtriranje rezultata pretraživanja.

    pronađi /home/max -iname "*.conf" |

    manje Pronađite određene stavke.

    Koristite modifikatore da prikažete samo određene stavke u rezultatima pretraživanja. Možete tražiti regularne datoteke (f), direktorije (d), simboličke veze (l), I/O uređaje bazirane na znakovima (c) i blok uređaje (b).

  4. pronađi / -type f -iname "ime datoteke" Filtrirajte rezultate pretrage prema veličini datoteke.

    Ako na računaru imate mnogo datoteka sa sličnim nazivima, ali znate veličinu datoteke koju tražite, filtrirajte rezultate pretrage prema veličini datoteke.

    • Ova komanda će pronaći sve datoteke veće od 50 MB. Koristite modifikator + ili - da označite povećanje ili smanjenje veličine. Ako nema modifikatora + ili -, komanda će pronaći datoteke čija veličina tačno odgovara navedenoj veličini.
    • Možete filtrirati rezultate pretraživanja prema bajtovima (c), kilobajtima (k), megabajtima (M), gigabajtima (G) ili blokovima od 512 bajta (b). Imajte na umu da prikazani modifikatori razlikuju velika i mala slova.
  5. Koristite logičke operatore (Boolean operatore) za kombiniranje filtera pretraživanja. Možete koristiti -and, -ili, -not operatore da kombinujete različite upite za pretraživanje u jedan upit.

    pronađi /travelphotos -tip f -veličina +200k -ne -iname "*2015*"

    • Ova komanda će pronaći datoteke u folderu Travelphotos koje su veće od 200 kB i nemaju broj 2015 u svom nazivu.