2015-01-02 3 views
-5

100 개 이상의 .gz 파일이있는 폴더가 있습니다.AWK를 사용하여 폴더의 각 파일 수 인쇄

file name : Count 

예 : I는 다음과 같이 출력을 얻을 필요가

abc.gz : 123456 

cde.gz : 123456 test.gz : 456,896

+6

어떤 수를 계산합니까? –

+1

크기를 의미합니까? –

+1

동일한 파일 수? 동일한 파일 유형? 올바른 정보로 원래 게시물을 업데이트하십시오. – Jotne

답변

2

이 현재 디렉토리에 각 파일의 라인을 계산하려면 할 수 있습니다

wc -l * 

위의 경우 모든 하위 디렉토리에 대한 경고가 생성됩니다. 있는 그대로 파일에서 라인의 수를 계산합니다 위의 물론

find . -maxdepth 1 -type f -exec wc -l {} + 

:이 경고를 방지하려면 같이 find 명령을 사용할 수 있습니다. 파일이 압축되어 있고 포함 된 압축되지 않은 파일의 줄 수가 필요한 경우 다음 스크립트를 사용할 수 있습니다.

#!/bin/bash 
for i in *.tar.gz 
do 
    echo "$i: $(zcat -- "$i" | wc -l)" 
done 
+0

만약'gz' 파일이라면'zcat file | wc -l'. – fedorqui

+1

사실입니다. '.tar.gz' 파일로 작업 할 수있는 스크립트를 추가했습니다. – user000001

+0

아래의 쿼리는 완벽하게 작동합니다 : * .tar.gz에있는 에 대한 감사의 말 do echo "$ i : $ (zcat -"$ i "| wc -l) " done –

관련 문제