텍스트 파일에서 숫자가 포함된 특정 줄을 제거합니다.

텍스트 파일에서 숫자가 포함된 특정 줄을 제거합니다.

여러 줄의 데이터가 있는 .csv 파일이 있습니다. 문자열/레코드에서 특정 값을 검색하고 해당 줄 자체를 삭제해야 합니다.

예를 들어:

abc.csv

col1_id,col2,col3,col4,col5
1000541,aaaa,bbbb,cccc,dddd
1000542,eeee,ffff,gggg,hhhh
1000543,iiii,jjjj,kkkk,llll
1000544,mmmm,nnnn,oooo,pppp

1000542를 검색하고 해당 숫자가 포함된 전체 줄을 제거해야 합니다.

col1_id,col2,col3,col4,col5
1000541,aaaa,bbbb,cccc,dddd
1000543,iiii,jjjj,kkkk,llll
1000544,mmmm,nnnn,oooo,pppp

답변1

sed한 줄을 제거하는 데 사용할 수 있습니다 .

sed -i '/1000542/d' abc.cvs

여기서 d행을 제거하고 수정된 텍스트를 출력하는 대신 파일에 대해 작업을 수행하도록 -i지시하는 것은 검색하려는 패턴이고 파일 이름입니다.sed1000542abc.cvs

답변2

awk를 사용할 수도 있습니다.

awk '/1000542/ {next}1' infile > outfile

예:

$ awk '/1000542/ {next}1' file
col1_id,col2,col3,col4,col5
1000541,aaaa,bbbb,cccc,dddd
1000543,iiii,jjjj,kkkk,llll
1000544,mmmm,nnnn,oooo,pppp

1000542인쇄에서 포함된 줄을 건너뜁니다 .

관련 정보