ディレクトリにあるファイルの数を調べる必要がある単純な Bash スクリプトを作成しています。基本的に、ディレクトリにファイルが含まれていない場合、スクリプトは終了します。ある場合は、他のことを行います。
Bash を使用してディレクトリにファイルがあるかどうかを確認するにはどうすればよいですか?
ありがとう!
他の回答は、ファイルの数を取得する方法を示しています。スクリプトで数値を使用する方法は次のとおりです。
(これは関数のコンテキストで表示され、$1
実行時に指定されたディレクトリ名になります。現在のディレクトリで使用するには、それを省略するか、その場所にディレクトリ名を固定することができます。)
checkdir(){
numfiles=$(ls -A "$1" | wc -l)
if [ $numfiles -gt 0 ]
then
echo YES;
else
echo NO;
fi
}
注: これは、ディレクトリをファイルとしてカウントします。ファイルのみが必要な場合は、そのls...wc
部分を次の行に置き換えます。
ls -AF "$1" | grep -v "/$" | wc -l