sed: -e выражение #1, символ 1: неизвестная команда: '|'

sed: -e выражение #1, символ 1: неизвестная команда: '|'

Когда я помещаю этот код в терминал:

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

Я получаю:

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

Почему?

решение1

Вам необходимо указать, что вы используете другой разделитель в sedкоманде удаления, добавив обратную косую черту \перед новым разделителем:

sed '\|text|d' file

Видетьвыбор строк по текстовому соответствию в руководстве GNU Sed.

Связанный контент