1行に1つずつファイルのリストを提供するコマンドがあります。ファイル名は「正常」です。空白がなく、角括弧をエスケープする必要はありません。
test -f
このコマンドを同様のコマンドに渡し、次の場合にのみtrueを返したいと思います。みんなファイルが存在します。 (ライン0の動作は定義されていない可能性があります。関係ありません。)
したがって、
make_list_of_files | test -f
ところで実際に働いています。
「Bashism」はBashに必要なので許可されています。
ファイルは同じディレクトリにはありませんが、現在のディレクトリのサブディレクトリにあり、パスにはディレクトリ名が含まれます。
dir/file1
dir/file2
dir2/file3
ベストアンサー1
allExist(){
while IFS= read -r f; do
test -e "$f" || return 1
done
}
make_list_of_files | allExist
これはすべてのPOSIXシェルで機能します。