열을 기준으로 행을 필터링하는 방법은 무엇입니까?

열을 기준으로 행을 필터링하는 방법은 무엇입니까?

기본적인 질문이라면 죄송합니다. 저는 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개 이상의 열이 있는 경우 모든 행)과 일치합니다.

관련 정보