シェルでディレクトリ内のファイルの数を調べる
例えばシェルでディレクトリ内に何ファイル存在するか調べるには以下の方法でチェックをする。
ls -FU1 '対象のパス' | grep -v / | wc -l
ざっと解説すると、lsの結果をgrepに渡し、grep -vで不要な情報を削除し、
wcコマンドにわたし、数をカウントしている。lsオプションは以下の通り。
- -F:ディレクトリが存在する場合は/を付与して表示する。
- -1:lsの結果を1行ずつ表示
- -U:lsの結果をソートしない(速度向上)
上記の例だとディレクトリを省いてファイルの数を調べている。
また、wcコマンドは、渡されたファイルのバイト数も表示するため、
-lオプションは、渡されたファイルの個数のみを表示させている。