Existe-t-il un moyen sensé de mettre en évidence les 4e, 5e et 6e colonnes à droite de la taille du fichier ls -l
? Mon intention est de faciliter la lecture d'une taille de fichier, que ce soit en octets, en Ko ou en MiB. Je connais le -h
drapeau, mais je trouve que devoir interpréter les lettres à la fin est plus lourd que de simplement regarder et voir la longueur du nombre (magnitude). C'est la même raison pour laquelle les voitures de course utilisent des cadrans analogiques au lieu de numériques.
Mon obus cible est Bash. Merci.
EDIT: Je cherche à mettre en évidence les milliers, dix mille et cent mille places de la colonne de taille. Comme ceci: 123 456 789
lsl
aliasée avec quelques changements mineurs. En fait, la réponse à cette question sera combinée avec votre technique là-bas dans monlsl
alias.grep --color -E -- "$(ls -rtl $@ | tail -n4)|$" <(ls -l $@ | perl -pe 's{^((?:\S+\s+){4}\d*)(\d{3})(?=\d{3})}{$1\e[31;1m$2\e[m}')
Réponses:
Peut-être quelque chose comme:
Pour le noir (ou quelle que soit la couleur de premier plan par défaut sur votre terminal) pour les tailles de 0 à 1023, le vert de 1k à 1M, le jaune pour 1M à 1G, puis le rouge, le violet, le bleu.
Modifier . En fonction de vos exigences modifiées:
la source
La façon la plus simple de ne pas installer de logiciel supplémentaire est de faire
grep --color
ce que vous voulez. Pour mettre en évidence la taille du fichier à partir de la sortie ls, vous devez exécuter quelque chose comme ça (parfois, il mettra en évidence non seulement la taille):Sinon, veuillez vous référer à la question similaire sur SO.
la source