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 매뉴얼에서 텍스트 일치로 행 선택.

관련 정보