我写了一条if-else statement
,以检查是否存在directorya*
或directoryb*
if [ -d /opt/directorya* ] || [ -d /opt/directoryb* ]; then
echo "SUCCESS"
else
echo "FAil
fi
但是,即使其中一个目录存在,我也会得到FAIL
所有服务器都在使用bash
请注意目录名称asterik
directorya*
中的directoryb*
在这里,directorya*
表示所有以directorya
名称开头的目录。
在这里,directoryb*
表示所有以directoryb
名称开头的目录。
答案 0 :(得分:3)
将目录转储到数组中并计数:
shopt -s nullglob
dirs=(/opt/directory[ab]*/)
if ((${#dirs[@]})); then
echo "success"
else
echo "fail"
fi