Verifica di un file e se è leggibile e scrivibile


17

Sto cercando di scrivere uno script che cercherà un determinato file .txt salvato sul mio desktop. Voglio che lo script sia in grado di verificare se questo file esiste e quindi verificare se è leggibile e scrivibile.

Qualche suggerimento?


leggi le espressioni condizionali di Bash nel manuale e usa gli operatori -re-w
glenn jackman,

Risposte:


28

Non è necessario verificare se esiste, i controlli per le autorizzazioni di lettura e scrittura sono sufficienti:

Da help test, una selezione di test pertinenti:

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

Quindi puoi provare:

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
non dovrebbe essere if [[ -r $FILE ]] && [[ -w $FILE ]]invece di if [[ -r $FILE && -w $FILE ]]?
Videonauth,

1
@Videonauth vedi gnu.org/software/bash/manual/bash.html#Conditional-Construct , &&etc sono ammessi a[[
muru
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.