bashでサブディレクトリ内も含めた、ファイル数を出力するコマンド

こんにちは。hacknoteのr.katoです。

サブディレクトリ内も含めたファイル数の取得する方法がわからなかったので調べました。

調べたいディレクトリ内で次のように実行するとファイル数が出力されます。
必要に応じてfind . の . を変更してください。

$ ls -lad $(find .) |wc -l

lsコマンド

ファイルまたはディレクトリの内容を表示するコマンド

オプション

-l ロングフォーマットで出力
-a .から始まるファイルも出力
-d ディレクトリの内容を表示しないでディレクトリ名を出力

引用元: http://itdoc.hitachi.co.jp/manuals/3021/3021313320/JPAS0329.HTM

wcコマンド

テキストファイルの行数や文字数を数えるコマンドです。

今回はオプションに -l を指定することで、行数カウントをさせています。

そのため、lsコマンドでカレントディレクトリ以下全てのファイルを1ファイル、1行に表示させ、それらの行数をwcコマンドで数えることでファイル数をカウントしています。