web-dev-qa-db-ja.com

ファイルサイズと行数を同時に取得する

ディレクトリ内のすべてのファイルを、サイズと行数の両方とともに一覧表示する方法を探しています。現在、stat -c \"%s %n\" /directory/*を使用してファイル名とサイズを取得しており、find /directory/ -type f -exec wc -l {} +を使用してファイル名と行数を取得できることはわかっていますが、両方を同時に取得する方法はありますか?

4
jmatula

もうすぐです。

見つける ディレクトリ -type f -exec wc -lc {} +

ファイル名、行数、およびcハラクター数を取得します。

厳密に言えば、-c(別名--bytes)は、カウントバイトとして文書化されており、これはおそらくあなたが望むものです。 「文字」を数えるための-m(別名--chars)オプションもあります。 mオプション文字の選択から、これはマルチバイト文字をカウントすると思います。例:Unicode文字。実際に単語を数えるための-wオプションもあります。

6
Scott

wcは、バイト数と行数の両方を提供できます。

find /directory/ -type f -exec wc -l -c {} +

findを使用することも、ワイルドカード引数(stat ... directory/*)、ディレクトリ内のファイルが多すぎて名前を1つのコマンドに収められない場合、後者は失敗するためです。

2
zackse

ディレクトリで次のコマンドを実行するだけです。

wc -lc *
for i in 'find \directory-name\ -type f'
do
echo "Printing line count and size of $i"
cat $i | wc -l
du -sh $i
done

これはあなたが望むものを手に入れるのに役立つと思います。

0
Pacifist
wc -c -l file1 file2 ... 

回答は30文字以上でなければなりません:)

0
loreb