Entries tagged wort ersetzen

A few sed and awk scripts

Posted on 15. Januar 2011 Comments

Entfernt die erste Zeile und schreibt das Ergebnis in files.2.csv

sed '1,1d' file.csv >files.2.csv

Entfernt das Wort foobar aus der ganzen Datei und ersetzt es durch ein Leerzeichen.

sed 's/foobar/ /g'

Entfernt alle “ aus der Datei. Problem dabei ist, dass Anführungszeichen normalerweise interpretiert werden. Mit einem Backslash wird sed gesagt, dass es sich um das Zeichen “ handelt.

sed 's/\"/ /g'

-F, teilt awk mit, dass das Komma(,) das Trennzeichen ist und nicht z.B. ; oder :. Ähnlich wie bei C kann die Ausgabe formiert werden. Mit %Zahl wird die Breite für die Ausgabe festgelegt. Das s dahinter deutet einen String an. Das Minus der letzten Zahl bedeutet nicht etwa Invertierung sondern linksbündig, da standardmässig alles rechtsbündig ist. \n ist natürlich ein Absatz. Die $Zahl im hinteren Teil ist die Spalte aus der Datei file.csv

awk -F, '{ printf("%23s%10s\t%7s\t%10s\t %10s%10s%4s%-30s\n", $2, $8, $9, $10, $11, $14, $16, $22 )}' file.csv

Informationen findet man auf os4.org und Wikipedia zu sed bzw. awk