Je cherche essentiellement des fichiers, puis je trie par taille. Le script fonctionne si je ne trie pas la taille par lisible par l'homme. Mais je veux que la taille soit lisible par l'homme. Comment trier des tailles lisibles par l'homme?
Par exemple:
ls -l | sort -k 5 -n | awk '{print $9 " " $5}'
Cela fonctionne comme prévu, j'ai la taille de mes fichiers en octets croissante:
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
Maintenant, je veux que la taille soit lisible par l'homme, j'ai donc ajouté un paramètre -h à ls, et maintenant certains fichiers sont hors service:
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
sortie
du
au lieu de ls
pourrait être une bonne idée.
find
« s -printf
avec son %p
et %s
formatteurs (suivie d'une « humanisation » des tailles).
-k 5
- Comment ça marche?