Wie spalte ich nicht kolumnierte Eingaben wie ls
folgt ein?
ls
erstellt eine optimierte Tabelle mit einer Mindestbreite für jede Zeile, zum Beispiel:
ls
2 dsao file with space with
5 e g wsdl-rubo-6cb0f1a9086e80c
d file leading space
Wenn ich jedoch eine Ausgabe einspeise column
(z. B. jede Datei in einer Zeile), wird jede Zeile mit der gleichen Breite aufgefüllt, sodass sie zur Bildschirmbreite passt:
for i in *; do echo "$i"; done | column
2 file with space
5 g
d leading space
dsao with
e wsdl-rubo-6cb0f1a9086e80c
file
(Ich verwende hier nur die Dateiliste, um die gleiche Ausgabe wie im Beispiel zu generieren. Ich suche nach einer solchen Lösung, um am Ende andere Dinge zu kolumnieren.)
Wie kann ich eine Ausgabe mit einer variablen Spaltenbreite kolunisieren?
ls
schafft). Vielleicht finden wir die Lösung, wenn wir uns den Quellcode des Quellcode des ls
Befehls in coreutils
column -c
_n
-x " zu spalten, aber die Ausgabe in so wenige Bildschirmspalten wie möglich einzupassen, anstatt die angegebene Breite auszufüllen ". Ist das richtig?