[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: sed



Am 2005-03-09 19:14:18, schrieb Klaus Becker:
> Hallo,
> 
> ich möchte in der Datei "test.txt"  "111"  durch  "222"  ersetzen. Laut einer 
> "Linux-Bibel" müsste das mit 
> "sed '1,$s/111/222/g' test.txt"  gehen. Sed zeigt mir aber nur "222" an, ohne 
> die Datei zu verändern:
> 
> -------------
> $ sed -e '1,$s/111/222/g' test.txt
> 222
> ------------
> 
> Was ist da falsch? Ich hab' versucht, mich selbst schlau zu machen, krieg's 
> aber allein nicht gerafft.

Das ist normal, denn 'sed' schreibt nach STDOUT
Also besser:

FILE=test.txt ; sed s/111/222/g $FILE >$FILE.tmp ; mv -f $FILE.tmp $FILE

ACHTUNG:    Du kannst NICHT 'sed s/111/222/g test.txt >test.txt'
========    machen da 'sed' ja die Datei zum lesen geöffnen hat.

> Klaus

Greetings
Michelle

-- 
Linux-User #280138 with the Linux Counter, http://counter.li.org/ 
Michelle Konzack   Apt. 917                  ICQ #328449886
                   50, rue de Soultz         MSM LinuxMichi
0033/3/88452356    67100 Strasbourg/France   IRC #Debian (irc.icq.com)

Attachment: signature.pgp
Description: Digital signature


Reply to: