gsutil
빈 파일 목록을 다운로드하려면 다음 명령을 사용하고 있습니다 . "filename"
출력을 쓰기 전에 헤더를 쓰고 싶습니다 .
gsutil ls -l "gs://test-data-prod-ingest/cm_data/AN/CM/*/a01_*_20210128*.csv.bz2" | awk '{if ($1 <= 100) print $3}' > ls_output.csv
출력은 다음과 같아야합니다
filename
somefile1
somefile2
---
---
답변1
노력하다:
...| awk '!hdr{ print "something as header"; hdr=1; }; $1 <= 100{ print $3; }'
이것의 장점은 awk가 stdin에서 무언가를 읽을 때만 헤더 라인이 인쇄되는 반면, BEGIN{...}
블록 내부에 헤더 라인을 쓰면 입력에서 데이터를 읽지 않아도 헤더 라인이 인쇄된다는 것입니다.
또는 적어도 하나의 레코드가 인쇄 기준을 충족하는 경우에만 헤더를 인쇄하는 것이 더 좋습니다.
...| awk '$1<=100 { if (!hdr) { print "something as header"; hdr=1; }; print $3; } '