जवाबों:
$ if test -d /the/dir; then echo "exist"; fi
test -d /the/dir
: test -d /the/dir && echo "exist" || echo "does not exist"
लेकिन वे वास्तव में एक ही हैं।
bash
!
tcsh
हूं क्योंकि मैं अपने को फिर से लिखने के लिए बहुत आलसी हूं .tcshrc
। लेकिन इस बिंदु पर अधिक: यह ओपी की समस्या को समझा सकता है।
मान लें कि आपका शेल BASH है:
if [ -d /the/dir ]; then echo 'Exists'; else echo 'Not found'; fi
csh
या tcsh
?
[ -d /home/bla/ ] && echo "exits"
[ -d /home/bla/ ] && echo "exist" ; [ ! -d /home/bla/ ] && echo "doesnt exist"
विहित तरीका परीक्षण (1) उपयोगिता का उपयोग करना है:
test -d path
जहाँ "पथ" प्रश्न में निर्देशिका का पथनाम है।
echo "Directory Exists"
।
यह जाँचने के लिए कि कोई निर्देशिका शेल स्क्रिप्ट में मौजूद है या नहीं, आप निम्न का उपयोग कर सकते हैं:
dir=$1
if [ -d "$dir" ]; then
#means that $dir exists.
fi
विपरीत की जाँच करने के लिए, !
से पहले जोड़ें-d ->[ ! -d ....]