sed: -e expressão #1, caractere 1: comando desconhecido: '|'

sed: -e expressão #1, caractere 1: comando desconhecido: '|'

Quando coloco este código no terminal:

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

Eu obtenho:

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

Por que?

Responder1

Você deve indicar que está usando um separador diferente no sedcomando delete, acrescentando uma barra invertida \antes do novo separador:

sed '\|text|d' file

Verselecionando linhas por correspondência de texto no manual GNU Sed.

informação relacionada