sed: -e Ausdruck Nr. 1, Zeichen 1: unbekannter Befehl: '|'

sed: -e Ausdruck Nr. 1, Zeichen 1: unbekannter Befehl: '|'

Wenn ich diesen Code ins Terminal eingebe:

sed -i "|^if [[ -f /etc/skel/.bashrc ]]; then . /etc/skel/.bashrc; fi|d" ~/.bashrc

Ich erhalte:

sed: -e expression #1, char 1: unknown command: '|'

Warum?

Antwort1

Sie müssen angeben, dass Sie im sedLöschbefehl ein anderes Trennzeichen verwenden, indem Sie \vor dem neuen Trennzeichen einen Backslash einfügen:

sed '\|text|d' file

SehenAuswählen von Zeilen durch Textübereinstimmung im GNU Sed-Handbuch.

verwandte Informationen