Memeriksa file dan apakah itu dapat dibaca dan ditulis


17

Saya mencoba menulis skrip yang akan mencari file .txt tertentu yang disimpan di desktop saya. Saya ingin skrip dapat memeriksa apakah file ini ada dan kemudian memeriksa untuk melihat apakah itu dapat dibaca dan ditulis.

Ada petunjuk?


baca Ekspresi Bersyarat Bash dalam manual, dan gunakan -rdan -woperator
glenn jackman

Jawaban:


28

Anda tidak perlu memeriksa apakah itu ada, cek untuk izin baca dan tulis sudah cukup:

Dari help test, pilihan tes yang relevan:

-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.

Jadi, Anda dapat mencoba:

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
harus itu tidak if [[ -r $FILE ]] && [[ -w $FILE ]]bukan if [[ -r $FILE && -w $FILE ]]?
Videonauth

1
muru
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.