GNU/Linux >> Linux Esercitazione >  >> Linux

Come elencare la dimensione di ogni file e directory e ordinare per dimensione decrescente in Bash?

Naviga semplicemente nella directory ed esegui il seguente comando:

du -a --max-depth=1 | sort -n

OPPURE aggiungi -h per dimensioni leggibili dall'uomo e -r per stampare prima directory/file più grandi.

du -a -h --max-depth=1 | sort -hr

Apparentemente --max-depth opzione non è nella versione di Mac OS X del du comando. Puoi invece usare quanto segue.

du -h -d 1 | sort -n


du -s -- * | sort -n

(questo non mostrerà i file nascosti (.dotfiles))

Usa du -sm per unità Mb ecc. Uso sempre

du -smc -- * | sort -n

perché la riga totale (-c ) finirà in fondo per ovvie ragioni :)

PS:

  • Vedi i commenti per la gestione dei dotfile
  • Uso spesso ad es. 'du -smc /home// | sort -n |tail' per avere un'idea di dove si trovano esattamente i bit più grandi

Linux
  1. Il Bash '?

  2. Come elencare i descrittori di file aperti (e i file a cui si riferiscono) nella sessione corrente di Bash?

  3. Come dividere un file e mantenere la prima riga in ciascuno dei pezzi?

  4. Come ottenere la dimensione di tar.gz nel file (MB) in python

  5. Come ottenere la dimensione fisica di un file in Linux?

Come verificare se un file o una directory esiste in Bash

Come ottenere la dimensione di una directory in Linux

Come copiare file e directory in Linux

Come salvare un file in Vim/Vi e uscire dall'editor

Come trovare la dimensione totale di una directory in Linux

Come verificare se esiste un file o una directory in Bash Shell