Sed 일치 하 는 줄 을 삭제 합 니 다. 일치 하 는 문 자 는 Shell 변수 로 바 꾸 고 변수 에 슬 래 쉬 "/"가 있 을 때 해결 방법 을 삭제 할 수 없습니다.

878 단어 Linux
원본 링크: https://zhidao.baidu.com/question/2138070399877009148.html
문법 을 수정 하고\# 로 대체 합 니 다. 이것 은 sed 의 s 교체 명령 에 만 사용 할 수 있 습 니 다. 예 를 들 어 s/A/B/는 s\# A\# B\# 라 고 쓸 수 있 습 니 다.
그러나 직접 정규 일치/정규/이렇게\# 로 대체 할 수 없습니다.
여기 서 참고 할 수 있 는 두 가지 방법 을 제공 합 니 다.
1) 삭제 할 경 로 를 s 명령 으로 파일 에 나타 날 수 없 는 유일한 문자열 로 바 꾼 다음 정규 일치 문자열 을 통 해 줄 을 삭제 합 니 다.sed 문장 에 쓸 수 있 습 니 다.
1
2 name= /usr/local/bin/ sed   -i  's#' $name '#EXCLUSIVE#;/EXCLUSIVE/d'   hello
2) grep 도 정규 를 지원 하 며, grep - v 역방향 여과 을 사용 할 수 있 습 니 다.
1
2
3 name= /usr/local/bin/ grep   - v   "$name"   hello >output mv   output hello

좋은 웹페이지 즐겨찾기