2017-10-02 1 views
0

입력 파일에 3000 줄이 있습니다.특정 패턴으로 시작하는 파일의 모든 줄을 제거하고 싶습니다.

system="This is nice" 
system="Add some crazy word" 
system="Some crazy word" 
system="Add another pattern" 
system="The parek went home" 
system="Add Ola phradse" 
system="The car is nice" 

I 시스템 후 추가 단어가 모든 라인을 제거 할 = "

그래서 입력 파일 당신은 터미널에서 sed하여이 작업을 수행 할 수

system="This is nice" 
system="Some crazy word" 
system="The parek went home" 
system="The car is nice" 
+0

https://stackoverflow.com/questions/17208931/bash-remove-all-lines-beginning-with-p SED '/^시스템 = "추가/D'file.txt를> new.txt 이것은 당신의 문제를 해결해야합니다 – user238607

답변

1

처럼 끝

sed '/^system="Add/ d' <text.txt> newtext.txt 
+0

완벽!이 환상적인 일을했습니다! –

1

이 문제가 해결되면 알려주세요.

해결 방법 1 : 여기에 awk를 사용합니다.

awk '!/system="Add/' Input_file 

설명 : 예 후 현재 행을 인쇄하는 경우 시스템이 = ", 거기에 추가되어 있지 않은 라인을 검색

해결 방법 2 :. 여기 그렙를 사용하여

. 내가 준 같은 정규식이 일치하는 모든 행을 생략합니다 그렙의 -v 옵션을 사용 :
grep -v '^system="Add' Input_file 

설명 system="Add에서 시작하는 행을 건너 뜁니다.