Hledejte největší adresáře nebo soubory na pevném disku pomocí funkce find

Už jste někdy chtěli vědět, která složka nebo soubor je největší na vašem pevném disku?

Příkaz nalézt je to skvělé, umožňuje nám to dělat mnoho věcí (o některých jsme již hovořili zde), zde vám přináším další využití.

Následující příkaz prohledá celý pevný disk a řekne nám, které jsou 10 největších souborů nebo složek v počítači:

sudo find / -printf '%s %p\n'| sort -nr | head -10

Pokud chcete znát nejen největší 10, ale 20 nebo něco podobného, ​​jednoduše vyměňte posledních 10 za požadované.

Jak jsem již řekl, bude to počítat složky i soubory, pokud chcete jen vzít v úvahu sloľky by bylo přidat -typ d (d = adresář):

sudo find / -type d -printf '%s %p\n'| sort -nr | head -10

Naopak a chci vidět pouze záznamy a žádné složky by nebyly -typ f (f = soubor):

sudo find / -type f -printf '%s %p\n'| sort -nr | head -10

Pokud chcete určit typ souboru, to znamená, vezměte v úvahu soubor .mp4, přidejte -iname "* .mp4":

sudo find / -iname "*.mp4" -printf '%s %p\n'| sort -nr | head -10

V mém případě největší soubory, které mám, jsou virtuální pevné disky mých virtuálních serverů s KVM+ Qemu, pak fotbalové video (představení Garetha Balea s Realem Madrid) a další věci.


Zanechte svůj komentář

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *

*

*

  1. Odpovědný za údaje: Miguel Ángel Gatón
  2. Účel údajů: Ovládací SPAM, správa komentářů.
  3. Legitimace: Váš souhlas
  4. Sdělování údajů: Údaje nebudou sděleny třetím osobám, s výjimkou zákonných povinností.
  5. Úložiště dat: Databáze hostovaná společností Occentus Networks (EU)
  6. Práva: Vaše údaje můžete kdykoli omezit, obnovit a odstranit.

  1.   Borisadrian řekl

    Přesně to, co jsem hledal, abych věděl, kde zabírám více místa v mém kořeni, a tak jej mohu uvolnit.

    Děkuju.

  2.   Eduardo řekl

    Velmi dobrý článek, velmi užitečný. Moc děkuji ... Mimochodem, Hala Madrid !! hehehe

    1.    FIXOCONN řekl

      Tady se připojuji k madridské skupině
      Před nějakou dobou jsem nainstaloval Centos 6.5 minimální a měl jsem tuto chybu a vyřešil jsem ji úpravou / etc / hostname, protože název hostitele, který jsem napsal v konfiguraci síťové karty, nebyl rozpoznán apache

  3.   3rn3st0 řekl

    Pokud se mi na něčem líbí «Desde Linux» je, že tyto skvosty se pro konzoli vždy objevují, díky nimž jsou naše životy mezi nulami a jedničkami snesitelnější. Děkuji mnohokrát KZKG ^ Gaara!

  4.   Páni řekl

    Přísahal bych, že jsem v tomto blogu četl alternativu, že protože jsem ji objevil, nemohu bez ní žít:

    ncdu

    Jedná se o interaktivní příkaz, který ve výchozím nastavení nepřichází (musíte jej nainstalovat z distribučního balíčku), ale je nesmírně užitečný. Seřadí soubory podle velikosti a zobrazí vám lištu nebo procento prostoru, který zabírají v oddílu. Zde je snímek obrazovky z internetu http://www.heitorlessa.com/wp-content/uploads/2013/04/NCDU-1.9-Disk-stats.png

  5.   vidagnu řekl

    Lze to provést také pomocí příkazu du.
    To je najít složky

    $ du -Sh | sort -rh | hlava -n 15

    A tenhle najde největší soubory.

    $ najít. -typ f -exec du -Sh {} + | sort -rh | hlava -n 15

    $ najít. -typ f -exec du -Sh {} + | sort -rh | hlava -n 15

  6.   hup80 řekl

    A jaké je vysvětlení pro každou možnost?

  7.   Luis Gago Casas řekl

    Velmi dobrý článek mi velmi pomohl.
    Děkuji vám za sdílení.

  8.   Roger Reyes řekl

    Může mi někdo pomoci? Potřebuji příkaz, který vypadá uvnitř adresáře pro všechny soubory .txt, které jsou větší než 0 bajtů, a přesune je do jiného adresáře, zatím jsem našel pouze toto:

    nalézt. -typ f -size + 1b -exec mv /home/oradev/new/*.txt / home / oradev / move \;

    ale přesuňte všechny soubory bez ohledu na jejich velikost.

  9.   JAC řekl

    Díky za příkaz!

    Použil to při jiných příležitostech, ale pouze v režimu „Script kiddie“ ... kvůli spěchu a podobně.

    A přestože find je velmi běžně používaný příkaz (-name, –exec), nebyl jsem schopen si celou příručku dobře prohlédnout.

    Už jsem si uvědomil brutální sílu, kterou tento velkolepý nástroj má ... ale teď to vidím opatrněji a obdivuji to víc.

    Tady to máte ve španělštině:
    http://es.tldp.org/Paginas-manual/man-pages-es-extra-0.8a/man1/find.1.html

    Je kurva, že argumenty nejsou intuitivnější ... Buď je znáte, protože jste se je naučili, nebo prohledáváte inet nebo člověka, když už jich není ... otas.

    Ještě jednou děkuji a děkuji jako vždy GNU!

    Jedna otázka ... jen ze zvědavosti:

    Když vložíte argument „printf“, abyste našli ...
    Používá find příkaz systémového printf, nebo je printf implementován v rámci find?

    Říkám to, protože printf je příkaz implementovaný v systému navždy, ale který jsem osobně nikdy nemusel využít ... alespoň přímo.

    Zdravím!

    zvedák.

  10.   duven řekl

    mohli byste mi říct, jak spustit sudo find / -type f -printf '% s% p \ n' | třídit -nr | hlava -10
    vyhýbat se některým trasám?

    Mám například:
    / dev / sda2 19G 16G 2.8G 85% /
    udev 10M 0 10M 0% / dev
    tmpfs 3.2 G 329 M 2.9 G 11% / běh
    tmpfs 7.9G 153M 7.8G 2% / dev / shm
    tmpfs 5.0 M 0 5.0 M 0% / běh / zámek
    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 / domů
    / dev / drbd2 2.9T 960G 1.8T 36% / nfs / homearchive
    / dev / drbd0 962G 426G 488G 47% / nfs / fond

    a při spuštění find / -type f -printf '% s% p \ n' | třídit -nr | hlava -10
    Získávám soubory z / nfs /
    Chtěl bych to ignorovat