![열을 기준으로 행을 필터링하는 방법은 무엇입니까?](https://linux55.com/image/208701/%EC%97%B4%EC%9D%84%20%EA%B8%B0%EC%A4%80%EC%9C%BC%EB%A1%9C%20%ED%96%89%EC%9D%84%20%ED%95%84%ED%84%B0%EB%A7%81%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
기본적인 질문이라면 죄송합니다. 저는 Linux를 자주 사용하지 않지만 필터링하고 싶은 13GB 파일이 있습니다.
123개의 열이 있는데 .
75열에 a만 있는 행을 삭제하고 싶습니다.
나는 이 작업을 수행하는 방법을 연구해 왔으며 지금까지 다음을 수행했습니다.
awk '$75 !~/./ {print $0}' oldfile.txt > newfile.txt
내가 제대로 하고 있는 걸까? 실행하면 빈 파일이 출력됩니다.
답변1
노력하다
awk '$75 != "." ' oldfile.txt > newfile.txt
이는 75열의 정확한 지점과 일치합니다.
당신은 무엇을 했나요?
awk '$75 !~/./ {print $0}'
임의의 문자와 다른 문자에 대해 열 75를 일치시키려고 시도합니다(정규식 일치 .
).
더 구체적으로
awk '$75 ~ /./ '
75열에 문자가 하나 이상 있는 모든 행(또는 75개 이상의 열이 있는 경우 모든 행)과 일치합니다.