Ați dorit vreodată să știți care dosar sau fișier este cel mai mare de pe hard disk?
Comanda găsi este minunat, ne permite să facem multe lucruri (am vorbit deja despre unele dintre ele aici), aici vă aduc o altă utilizare a acestuia.
Următoarea comandă va căuta pe întregul HDD și ne va spune care sunt cele mai mari 10 fișiere sau foldere de pe computer:
sudo find / -printf '%s %p\n'| sort -nr | head -10
Dacă doriți să cunoașteți nu doar cele mai mari 10, ci și cele 20 sau ceva de genul acesta, schimbați ultimele 10 cu cele dorite.
După cum am spus mai înainte, acest lucru va conta atât dosarele, cât și fișierele, dacă doriți doar să țineți cont de dosare ar fi să adăugați -tipul d (d = director):
sudo find / -type d -printf '%s %p\n'| sort -nr | head -10
Dimpotrivă și doriți să vedeți doar înregistrări și niciun dosar nu ar fi de tipul f (f = fișier):
sudo find / -type f -printf '%s %p\n'| sort -nr | head -10
Dacă doriți să specificați tipul de fișier, adică luați în considerare .mp4, adăugați doar un -inume "* .mp4":
sudo find / -iname "*.mp4" -printf '%s %p\n'| sort -nr | head -10
În cazul meu, cele mai mari fișiere pe care le am sunt HDD-urile virtuale ale serverelor mele virtuale cu KVM+ Qemu, apoi un videoclip de fotbal (prezentarea lui Gareth Bale cu Real Madrid) și alte lucruri.
Tocmai ceea ce căutam să știu unde ocup mai mult spațiu în rădăcina mea și, astfel, să îl pot elibera.
Mulţumesc.
Articol foarte bun, foarte util. Mulțumesc mult ... Apropo, Hala Madrid !! hehehe
Mă alătur grupului de la Madrid aici
Acum ceva timp am instalat centos 6.5 minimum și am avut această eroare și am rezolvat-o editând / etc / hostname, deoarece numele de gazdă pe care îl scrisesem în configurația plăcii de rețea nu era recunoscut de apache
Dacă este ceva care îmi place la „Desde Linux» este că aceste pietre prețioase apar mereu pentru consolă care ne fac viața între zero și uni mai suportabilă. Mulțumesc foarte mult KZKG ^ Gaara!
Aș jur că am citit în acest blog o alternativă, că de când am descoperit-o nu pot trăi fără ea:
ncdu
Este o comandă interactivă care nu vine în mod implicit (trebuie să o instalați din pachetul dvs. de distribuție), dar este extrem de utilă. Sortează fișierele după dimensiune, arătându-vă o bară sau un procent din spațiul pe care îl ocupă pe partiție. Iată o captură de ecran luată de pe internet http://www.heitorlessa.com/wp-content/uploads/2013/04/NCDU-1.9-Disk-stats.png
Se poate face și cu comanda du.
Aceasta este pentru a găsi folderele
$ du -Sh | sort -rh | cap -n 15
Și acesta pentru a găsi cele mai mari fișiere.
$ gaseste. -tip f -exec du -Sh {} + | sort -rh | cap -n 15
$ gaseste. -tip f -exec du -Sh {} + | sort -rh | cap -n 15
Și care este explicația pentru fiecare opțiune?
Un articol foarte bun mi-a fost de mare ajutor.
Vă mulțumesc foarte mult pentru că ați distribuit-o.
Ma poate ajuta cineva? Am nevoie de o comandă care caută într-un director toate fișierele .txt care sunt mai mari de 0 octeți și le mută într-un alt director, până acum am găsit doar acest lucru:
găsi. -tip f -size + 1b -exec mv /home/oradev/new/*.txt / home / oradev / move \;
dar mutați toate fișierele indiferent de mărimea lor.
Multumesc pentru comanda!
O folosise cu alte ocazii, dar numai în modul „Script kiddie” ... din cauza pripii și altele.
Și, deși find este o comandă foarte frecvent utilizată (-name, –exec), nu am putut să arunc o privire bună la întregul manual.
Îmi dădusem deja seama de puterea brutală pe care o are acest instrument magnific ... dar acum îl văd mai atent și îl admir mai mult.
Iată-l în spaniolă:
http://es.tldp.org/Paginas-manual/man-pages-es-extra-0.8a/man1/find.1.html
Este o cățea că argumentele nu sunt mai intuitive ... Fie le știi, pentru că le-ai învățat, fie să cauți inet sau în om când nu mai sunt ... otas.
Mulțumesc din nou și mulțumesc ca întotdeauna GNU!
O întrebare ... doar din curiozitate:
Când puneți argumentul "printf" pentru a găsi ...
Find utilizează comanda de sistem printf sau printf este implementat în find?
Spun asta, pentru că printf este o comandă implementată în sistem pentru totdeauna, dar pe care eu personal nu am trebuit să o folosesc ... cel puțin direct.
Salutări!
jack.
ai putea să-mi spui cum să execut sudo find / -type f -printf '% s% p \ n' | sort -nr | cap -10
evitarea unor trasee?
Am de exemplu:
/ dev / sda2 19G 16G 2.8G 85% /
udev 10M 0 10M 0% / dev
tmpfs 3.2G 329M 2.9G 11% / rulare
tmpfs 7.9G 153M 7.8G 2% / dev / shm
tmpfs 5.0M 0 5.0M 0% / run / lock
tmpfs 7.9G 0 7.9G 0% / sys / fs / cgroup
/ dev / sda1 453M 37M 389M 9% / boot
/ dev / drbd3 477M 2.3M 445M 1% / var / lib / nfs
/ dev / drbd1 1.9T 821G 1005G 45% / nfs / home
/ dev / drbd2 2.9T 960G 1.8T 36% / nfs / homearchive
/ dev / drbd0 962G 426G 488G 47% / nfs / pool
și atunci când rulează find / -type f -printf '% s% p \ n' | | sort -nr | cap -10
Primesc fișiere de la / nfs /
Aș vrea să ignor asta