sed suchen und anfügen

bit-teufel

bit-teufel

Eroberer
Hallo Zusammen,

Ich habe eine Datei mit ganz viel Text und dort suche ich mittels sed ein Muster, das auch korrekt gefunden wird.
Nun versuch ich in der Zeile in der das Muster gefunden wird am Anfang eine Raute # hinzuzufügen. Das klappt aber leider nicht.

Hier ein Versuch von mir
echo "abcdefghij" | sed 's/cd/#/' Ausgabe = ab#efghij. Die Raute wird immer dort plaziert wo sed das Muster findet ich hätte aber gerne die Raute am Anfang der Zeile, also vor dem a. Die Zeichen Länge bis zum Muster ist auch variable sodass ich nicht einfach die Zeichen mittel Punkten ... ersetzen kann.

Weiß jemand Rat ?
 
Folgendermassen:
Code:
echo "abcdefghij" | sed 's/\(.*cd.*\)/#\1/'
Die Zeichenfolge ".*cd.*" passt nun auf jede ganze Zeile, die irgendwo die Buchstaben 'cd' enthaelt. Indem Du dies nun mit '\( \)' umschreibst, kannst Du in der "Ersatzregel" (also dem, was zwischen dem zweiten '/' und dritten '/' steht), durch \1 auf die gesamte Zeichenkette zugreifen, die auf das Suchmuster .*cd.* passt, zugreifen.
 

Ähnliche Themen

Keine grafische Oberfläche (Debian Installation)

Leerzeichen, Großbuchstaben, HTML Tags entfernen mittels SED

CSV Datei mit sed manipulieren/optimieren/ergänzen

Suchen und ersetzen in HTML Dokumenten

Zeilen löschen und ersetzen mit sed

Zurück
Oben