SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 採用情報 ...
技術者募集中

【linux】 あるディレクトリの下にいくつファイルがあるか調べる

問題

あるディレクトリの下にいくつファイルがあるか調べたい。

例)メールを保存しているディレクトリの中で容量ではなくてファイル数としてはどんな状況となっているか調べたい。

答え

あるディレクトリ直下のファイルの数を調べる

1オプションで1列に並べて、Uオプションはソート不要のオプションで高速化、負荷軽減のため。wcで行数を数える。

ls -1U | wc -l
(結果)
123

あるディレクトリをサブディレクトリ含めてファイルの数を調べる

Rオプションでサブディレクトリも対象にする。

ディレクトリまで含んでしまうけど大体の目安はつかめる。

ls -1UR | wc -l
(結果)
12345

あるディレクトリ直下にあるディレクトリそれぞれの中のファイルの数を調べる

・あるディレクトリの直下にメールアドレスごとのディレクトリがあって、その中のメールの数を知りたいとき
・あるディレクトリの下に案件ごとのディレクトリがあって、その中のファイル数を数えたいとき
などに。

$ cd 対象のディレクトリ
$ for x in * ; do echo $x ; ls -1UR $x | wc -l ; done
(結果)
aaa
1234
bbb
2345
ccc
3456
ddd
4567
eee
5678

findでファイル一覧を出す

find の -type f でファイルを検索する。出てきたものをwcでカウントする。

$ find 対象のディレクトリ -type f | wc

メモ

ls -f は、-aU有効の-ls --color無効と同じそうで、「.」と[
..」も出てくる。ls -fもソートはしないので、こちらでもよい。

関連するメモ

コメント