Sto fondamentalmente cercando i file quindi ordinandoli per dimensione. Lo script funziona se non ordino le dimensioni in base alla lettura umana. Ma voglio che le dimensioni siano leggibili dall'uomo. Come posso ordinare formati leggibili dall'uomo?
Per esempio:
ls -l | sort -k 5 -n | awk '{print $9 " " $5}'
Funziona come previsto, ho ottenuto la dimensione dei miei file in byte crescente:
1.txt 1
test.txt 3
bash.sh* 573
DocGeneration.txt 1131
andres_stuff.txt 1465
Branches.xlsx 15087
foo 23735
bar 60566
2016_stuff.pdf 996850
Ora, voglio che le dimensioni siano leggibili dall'uomo, quindi ho aggiunto un parametro -h a ls, e ora alcuni file sono fuori servizio:
ls -lh | sort -k 5 -n | awk '{print $9 " " $5}'
1.txt 1
DocGeneration.txt 1.2K
andres_stuff.txt 1.5K
test.txt 3
Branches.xlsx 15K
foo 24K
bar 60K
bash.sh* 573
2016_stuff.pdf 974K
ls
dell'output
du
posto di ls
potrebbe essere una buona idea.
find
s' -printf
con la sua %p
e %s
formattatori (seguita da una ‘umanizzazione’ delle dimensioni).
-k 5
- come funziona?