5d6d网 发表于 2018-8-20 10:15:57

shell 判断文件夹或文件是否存在

  文件比较符
  -e filename如果 filename存在,则为真[ -e /var/log/syslog ]
  -d filename如果 filename为目录,则为真[ -d /tmp/mydir ]
  -f filename如果 filename为常规文件,则为真[ -f /usr/bin/grep ]
  -L filename如果 filename为符号链接,则为真[ -L /usr/bin/grep ]
  -r filename如果 filename可读,则为真[ -r /var/log/syslog ]
  -w filename如果 filename可写,则为真[ -w /var/mytmp.txt ]
  -x filename如果 filename可执行,则为真[ -L /usr/bin/grep ]
  filename1-nt filename2如果 filename1比 filename2新,则为真[ /tmp/install/etc/services -nt /etc/services ]
  filename1-ot filename2如果 filename1比 filename2旧,则为真[ /boot/bzImage -ot arch/i386/boot/bzImage ]
  文件夹不存在则创建
if [ ! -d "/data/" ];then  
mkdir /data
  
else
  
echo "文件夹已经存在"
  
fi
  文件存在则删除
if [ ! -f "/data/filename" ];then  
echo "文件不存在"
  
else
  
rm -rf /data/filename
  
fi
  判断文件夹是否存在
if [ -d "/data/" ];then  
echo "文件夹存在"
  
else
  
echo "文件夹不存在"
  
fi
  判断文件是否存在
if [ -d "/data/test" ];then  
echo "文件存在"
  
else
  
echo "文件不存在"
  
fi


页: [1]
查看完整版本: shell 判断文件夹或文件是否存在