存在しないファイルはありますか?

存在しないファイルはありますか?

(空のソース/シンクファイルパス)行に沿って、/dev/null少なくともLinuxでは有効なファイルを指さないパスはありますか?これは主に私が作成しているいくつかのスクリプトをテストするためのものであり、スクリプトに属していないファイルが存在する場合は削除または移動したくありません。

ベストアンサー1

あるいは、スクリプトが一時ディレクトリを作成し、その中でファイル名を見つけることをお勧めします。これにより、ファイルが存在しないと100%確実になり、すべての権限を持って直接簡単に整理できます。それは次のとおりです。

dir=$(mktemp -d)
if [ -e "$dir"/somefile ]; then
    echo "Something is seriously wrong here, '$dir/somefile' exists!"
fi
rmdir "$dir"

任意の言語で同等のコードを書くことができ、ほとんどの(すべて?)高度な言語には、一時ディレクトリの作成と削除を処理する専用のツールがあります。これは、存在してはならないファイル名を推測するよりも安全できれいなアプローチのようです。

おすすめ記事