특정 위치/인덱스에 특정 문자가 없는 줄만 유지하려면 "Grep"을 사용하시겠습니까?

특정 위치/인덱스에 특정 문자가 없는 줄만 유지하려면 "Grep"을 사용하시겠습니까?

수천 줄의 16진수 값이 포함된 텍스트 파일이 있습니다.

0x20000804

0x20001004

0x20002004

0x20004004

0x20008004 등... (수천 줄)

특정 인덱스/위치에서 특정 문자가 있는 줄을 제외하기 위해 역방향 grep 표현식을 수행하는 방법이 있습니까?

예: .txt 파일의 위 숫자에 대해 색인/위치 #6에 "8"이 없는 행만 유지하고 싶습니다.

다음으로 시작하세요:

0x20008034

0x20000804

0x20001004

0x20002004

0x20004004

0x20008004

다음과 같은 결과가 나와야 합니다.

0x20000804

0x20001004

0x20002004

0x20004004

이 줄에는 인덱스/위치 6에 문자 "8"이 없기 때문입니다.

답변1

그렙을 사용하세요:

grep -vE '^.{6}8' file

Awk에서는 빈 필드 구분 기호를 사용하여 각 문자가 필드가 되도록 합니다.

awk -F '' '$7 != "8"' file

답변2

$ grep -v '^0x....8' /path/to/datafile

관련 정보