こんにちは友達、ネストされたifステートメントを使用してこのメソッドを書き換えるのに役立ちますか?とても感謝しています。
isDiskMounted()
{
if [ -d "/folder1" ] && [ -d "/folder2" ] && [ -d "/folder3" ] && [ -d "/folder4" ];then
echo "true"
else
echo "false"
fi
}
私はこのように書こうとします。
isDiskMounted()
{
if [ -d "/folder1" ]; then
echo "/folder1 klasoru bulundu"
if [ -d "/folder2" ]; then
echo "/folder2 klasoru bulundu"
if [ -d "/folder3" ]; then
echo "/folder3 klasoru bulundu"
if [ -d "/folder4" ]; then
echo "/folder4 klasoru bulundu"
fi
fi
fi
echo "true"
else
echo "false"
fi
}
ベストアンサー1
純粋にコードレビューの観点から、次のように関数を作成します。
func()
{
for d in /folder1 /folder2 /folder3 /folder4 ; do
if ! [ -d "$d" ] ; then
echo "$d does not exist (or is not a directory)"
return 1
fi
done
echo "all dirs exist"
}
このループを使用すると、新しいディレクトリをリストに追加したり、関数に引数として渡したりするのが簡単になります。
(しかし、関数名が示すように、何かがインストールされていることを確認することが目標であれば、ディレクトリが存在するかどうかをテストすることに大きな利点はありません。)