एक फ़ाइल के लिए जाँच करना और क्या यह पठनीय और योग्य है


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 ]]?
विदेहोनथ

1
@Videonauth देखें gnu.org/software/bash/manual/bash.html#Conditional-Constructs , &&आदि की अनुमति है[[
muru
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.