3열에 1이 포함된 행을 추출합니다.

3열에 1이 포함된 행을 추출합니다.

633,000개의 행을 포함하고 모두 3개의 열을 포함하는 텍스트 파일이 있습니다.

768844  30050038638556  0
768892  30050018569904  1
768967  30050028970902  0

파일의 세 번째 열에 "1"이 포함된 행을 추출하는 방법, 결과는 1을 포함하는 행만 되어야 합니다.

768892  30050018569904  1

답변1

열 3이 정확히 "1"이 되도록 하려면 다음을 수행하십시오.

awk '$3==1' input > output

3열을 원하시면포함하다'1'이면 다음과 같습니다.

awk '$3~1' input > output

sed를 선호하는 경우 "열 3은 정확히 1입니다"는 다음과 같습니다.

sed -rn '/^[^ ]*[ ]*[^ ]*[ ]+1$/ p' input > output

...그리고 sed의 "열 3에는 1이 포함되어 있습니다":

sed -rn '/^[^ ]*[ ]*[^ ]*[ ]+.*1.*$/ p'

답변2

세 번째 열 뒤에 공백이 없고(즉, 숫자가 행의 맨 끝에 있음) 세 번째 열에서는 한 자리 숫자만 처리한다고 가정합니다.

grep '1$'  input.txt > output.txt

관련 정보