압축되지 않은 데이터를 디스크에 저장하지 않고 .gz 파일에서 awk를 사용하여 정보를 추출하는 방법

압축되지 않은 데이터를 디스크에 저장하지 않고 .gz 파일에서 awk를 사용하여 정보를 추출하는 방법

다음 명령을 사용해야 합니다.

awk 'NR==FNR {a[$1]; next} $1 in a{print}' inputfile1.txt inputfile2.gen.gz >output.txt

awk는 .gz 파일을 읽지 않습니다.

나는 열심히 노력했다

zcat inputfile2.gz | awk 'NR==FNR {a[$1]; next} $1 in a{print}' inputfile1.txt inputfile2.gen.gz >output.txt

여전히 작동하지 않습니다.

답변1

표준 입력을 읽으려면 Awk에 대시 인수를 제공하십시오.

zcat inputfile2.gz |
awk 'NR==FNR {a[$1]; next}
    $1 in a' inputfile1.txt - >output.txt

{print}(또한 이는 이미 Awk의 암시적 기본 동작이므로 이를 제거했습니다 .)

관련 정보