Thread sed script als perl einzeiler (6 answers)
Opened by dukerw at 2004-03-24 16:49

Strat
 2004-03-24 19:54
#81203 #81203
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
while(<>) { .... }

entspricht dem Parameter -n
Code: (dl )
1
2
3
4
while (<>) {
...
print;
}

entspricht dem Parameter -p

da es sich um eine einfache ersetzung eines Zeichens durch ein anderes handelt, duerfte da tr eine bessere wahl sein als s(ed)

dann noch das if durch ein and ersetzen, und man kommt zu einer recht kurzen loesung
Code: (dl )
perl -pe '/^export/ and tr~\\~/~' dasScript > out.script

oder gleich in der datei ersetzen:
Code: (dl )
perl -i.bak -pe '/^export/ and tr~\\~/~' dasScript

dann wird die originaldatei unter dasScipt.bak abgelegt

unter Unix kann man auch auf das backup verzichten (nicht jedoch unter Windows):
Code: (dl )
perl -i -pe '/^export/ and tr~\\~/~' dasScript


-l ist da uebrigens ueberfluessig, weil in der datei sowieso schon zeilenumbrueche stehen...
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/

View full thread sed script als perl einzeiler