Page 1 of 1

Frage sed

Posted: 2015-02-25 15:45
by AWOHille
Hallo,

ich möchte in eine Datei, an einer bestimmten Zeile z.B. Zeile 5, einen bestimmten Text an diese Zeile ran hängen. Das Auslesen einer bestimmten Zeile in einer Datei habe ich so erledigt

Code: Select all

sed -n '5 p' datei.txt
Deinen bestimmenden Text an jedes Zeilenende so

Code: Select all

sed -i 's/$/, text/g' /datei.txt
Wie bekomme ich es nun hin, das diese Text nur in Zeile 5, an den bestehenden Text, angehängt wird?

Re: Frage sed

Posted: 2015-03-02 22:12
by ddm3ve
Ich habe eine Datei angelegt: test.txt mit folgenden Inhalt

Code: Select all

11
12
13
14
1
16
17
18
Danach folgenden Befehle ausgeführt und das Ergebnis:
sed -e "5 s/$/5/g" -i test.txt

sed hat mit in Zeile 5 die 5 angefügt.

Was macht der Befehl nun genau? "5 " gibt die Zeile an, s/$/ sucht nach dem Zeilenende und erzetzt dieses /5/ mit 5. /g gilt global,. -i erledigt das innerhalb der Daten und nicht über STDIN/STDOUT.

Re: Frage sed

Posted: 2015-03-03 15:01
by AWOHille
Perfekt, danke!