![열이 특정 문자열이 아닌 CSV 파일에서 행 제거](https://linux55.com/image/167318/%EC%97%B4%EC%9D%B4%20%ED%8A%B9%EC%A0%95%20%EB%AC%B8%EC%9E%90%EC%97%B4%EC%9D%B4%20%EC%95%84%EB%8B%8C%20CSV%20%ED%8C%8C%EC%9D%BC%EC%97%90%EC%84%9C%20%ED%96%89%20%EC%A0%9C%EA%B1%B0.png)
다음 CSV 파일이 있습니다.
"mikecook1966","6days","","Classy1","7/2020"
"kyndrion","1min","","Doominator handle","7/2020"
"Ataca","Feb2,2020","","Soporte 30.5x30.5 VTX-DVR Speedy Bee","7/2020"
2열에 가 포함된 출력을 유지하고 싶습니다 2020
.
출력 예:
"Ataca","Feb2,2020","","Soporte 30.5x30.5 VTX-DVR Speedy Bee","7/2020"
답변1
CSV에 이스케이프된 큰따옴표가 포함되어 있지 않으면 grep을 사용할 수 있습니다.
grep '^"[^"]*","[^"]*2020' file.csv
보다 복잡한 CSV의 경우 CSV를 지원하는 도구가 필요합니다.
perl -MText::CSV_XS=csv -e 'csv( in => "file.csv",
filter => { 2 => sub{ /2020/ } } )'