alternativ öffnest du die Datei im vim und tippst:
CODE:
:%s# *$
% steht für alle Zeilen,
s für substitute,
# für ein beliebigen Trenner (beim sed benutzen viele / z.B. s/texta/textb/),
ja und ' *'$' matched alle Leerzeichen bis zum Zeilenende.
Auf der sun ist nur der vi. Den benutze ich zwar, aber zum editieren größerer Dateien ist mir das zu aufwändig.
Aber ich werde es mal ausprobieren, vielleicht klappts ja.
Meist nehme ich den pspad, weil ich ja mit einem W$ Rechner hantieren muss. Und in der virtualBox ist Debian von dort aus gehe ich auf die Suns.
Ich benutze awk und sed ja selber häufig, nur kam ich ohne das Beispiel auf der verlinkten Seite nicht zurecht. Ich hatte bei meiner regex das $ nicht an der richtigen Stelle. Bin gerade nicht bei der Arbeit, müsste gucken, was ich genau falsch hatte.
Und wenn ich wieder mal ein Problem habe, finde ich nun wenigstens den Link im eigenen Blog
So, mit dem normalen vi probiert, klaptt.
Mir wäre %s/ *$// einleuchtenter gewesen.
Offensichtlich kann man beim vi(ed) das derart verkürzen. Naja, wieder was gelernt, jetzt nur noch merken
stimmt, du kannst beim Löschen am Ende ein wenig sparen.
Als Trenner habe ich mir # angewöhnt, weil das übersichtlicher wird, wenn du noch einige Zeichen mit \ escapen musst.
#1.2.1
Thorsten Strusch
on
2009-05-26 08:23
(Reply)
http://mirbsd.de/jupp
Einfach ^K] drücken… (entfernt zur Zeit
Space, Tab, Carriage Return außer im
CR-LF Modus)
Kommandozeile:
printf ',g/[→ ]*$/s///\nwq\n;' | ed -s $file
Hier → durch Tab ersetzen (ggf. Ctrl-V
Tab drücken in der Shell).