Bzgl. `fmt -w': Man muss es ja auch nicht uebertreiben.
Doppelte Terminalbreite sollte in so Faellen so gut wie immer ausreichen. Irgendwie soll das Script ja auch einen Sinn haben ... der sich mir bei 2000 Zeichen langen Zeilen irgendwie nicht mehr so ganz erschliesst.
Anfangs hatte ich in meinem Code ein `-w200' drin, hab es dann aber weggelassen, weil ich es nicht unbedingt noetig fand und dachte, dass man das ja dann gleich merkt und in der Manpage problemlos findet.
eggy hat geschrieben: 05.08.2021 12:17:41
Um nochmal etwas ontopic zu bleiben, mir lässt die nl Sache keine Ruhe.
Code: Alles auswählen
seq 1 3000 | awk '{printf" "$0} NR%3==0{print""}' | nl -s ":" -w1
Theoretisch™ sollte das rechtsbündig ohne Spaces ja irgendwie einfach machbar sein, -n in kombination mit -w scheint kaputt, aber wenn oben man statt -w1 z.B -w4 mitgibt geht's in die richtige Richtung. Nur wie kommt jetzt am besten an den jeweils passenden Wert für w?
nl ist ja so 'n neumodisches Ding, das eigentlich niemand braucht, weil man seit 1977 ja `awk '{print NR, $0}'' verwenden kann.
So wirklich ueberzeugt mich nl nicht. Was ist denn der Sinn von `-w', wenn es die Zahl einfach abschneidet, falls sie zu gross wird? Da verschiebe ich doch lieber das Layout anstatt Information wegzuwerfen. (So wie printf(3) das bei `%3d' auch macht.) Wenn ich mir die Manpage anschaue, dann weiss ich auch nicht recht ... das wirkt vom Stil so un-unix-artig, finde ich.
Waere mal interessant, zu recherchieren wo nl herstammt (also was das Design angeht, wer das entworfen hat, welchen Background die Person hatte, wofuer es geschrieben worden ist). Meine FreeBSD-Manpage sagt, dass es zuerst in SystemV R2 aufgetaucht ist. Das Utility ist sogar in POSIX spezifiziert:
https://pubs.opengroup.org/onlinepubs/9 ... es/nl.html