Gibt es eine vernünftige Möglichkeit, die 4., 5. und 6. Spalte rechts von der Dateigröße in hervorzuheben ls -l
? Meine Absicht ist es, das Lesen einer Dateigröße zu vereinfachen, sei es in Bytes, KiBs oder MiBs. Ich weiß etwas über die -h
Flagge, aber ich finde, dass es umständlicher ist, die Buchstaben am Ende interpretieren zu müssen, als nur die Länge der Zahl (Größe) zu sehen und zu sehen. Dies ist der gleiche Grund, warum Rennwagen analoge statt digitale Zifferblätter verwenden.
Meine Zielhülle ist Bash. Vielen Dank.
BEARBEITEN: Ich möchte die Tausenden, Zehntausenden und Hunderttausenden Stellen der Größenspalte hervorheben. So: 123 456 789
lsl
mich mit einigen geringfügigen Änderungen darauf eingestellt. Tatsächlich wird die Antwort auf diese Frage dort in meinemlsl
Alias mit Ihrer Technik kombiniert .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}')
Antworten:
Vielleicht so etwas wie:
Für Schwarz (oder was auch immer die Standardvordergrundfarbe auf Ihrem Terminal ist) für Größen von 0 bis 1023, Grün von 1k bis 1M, Gelb für 1M bis 1G, dann Rot, Lila, Blau.
Bearbeiten . Basierend auf Ihren bearbeiteten Anforderungen:
quelle
Der einfachste Weg, zusätzliche Software zu installieren, ist das,
grep --color
was Sie wollen. Um die Dateigröße aus der Ausgabe hervorzuheben, sollten Sie so etwas ausführen (manchmal wird nicht nur die Größe hervorgehoben):Andernfalls beziehen Sie sich bitte auf die ähnliche Frage zu SO.
quelle