与えられたユーザが内部のすべてのファイルとサブディレクトリを持つ特定のディレクトリを読み取ることができる場合は、bashスクリプトでテストする必要があります。スクリプトはのルートとして実行されます。指定されたユーザー名と仮定すると指定されたユーザーがディレクトリと内部のすべてのファイルを読み取ることができるかどうかをテストするBashスクリプト?
が$user
で、テストへのディレクトリが$dir
である私は、スクリプトに
su -m $user -c "test -r $dir && test -x $dir" if [ $? -ne ]; then echo "$dir is not readable or executable" fi
を次の行を追加して、あなたは正しい提案するか、それを改善するだろうか?
これは、いくつかのファイルが読めない場合であっても0を返す「見つける」のように見えます。 $ dir内の_all_ファイルが$ userによって読み込み可能であることをテストするにはどうすればよいですか? – Michael
@Michael上記の編集を参照してください。 – devnull
ありがとうございます。それは今働きます。 – Michael