ファイルをチェックし、読み取りおよび書き込み可能かどうかを確認する


17

デスクトップに保存されている特定の.txtファイルを検索するスクリプトを作成しようとしています。このファイルが存在するかどうかをスクリプトで確認してから、読み取りおよび書き込みが可能かどうかを確認できるようにします。

ヒントはありますか?


読み取りバッシュ条件式マニュアルで、かつ使い-r-wオペレータ
グレンはジャックマン

回答:


28

存在するかどうかを確認する必要はありません。読み取り権限と書き込み権限の確認で十分です。

からhelp test、関連するテストの選択:

-a FILE        True if file exists.
-e FILE        True if file exists.
-f FILE        True if file exists and is a regular file.
-r FILE        True if file is readable by you.
-s FILE        True if file exists and is not empty.
-w FILE        True if the file is writable by you.

だからあなたは試すことができます:

FILE="/path/to/some/file"

if [[ -r $FILE && -w $FILE ]]
then
# do stuff
else
# file is either not readable or writable or both
fi

2
if [[ -r $FILE ]] && [[ -w $FILE ]]代わりにすべきではありませんif [[ -r $FILE && -w $FILE ]]か?
Videonauth

1
参照@Videonauth gnu.org/software/bash/manual/bash.html#Conditional-Constructsを&&などがで許可されている[[
muru
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.