12、shell 判断文件夹或文件是否存在
2019-12-17 本文已影响0人
爱学习的蹭蹭
1、文件夹不存在则创建
#如果文件夹不存在,创建文件夹
if [ ! -d "/data/" ];then
mkdir /data
else
echo "文件夹已经存在"
fi
2、文件存在则删除
# 判断对象是否存在,不存在输出信息,其他删除
if [ ! -f "/data/filename" ];then
echo "文件不存在"
else
rm -f /data/filename
fi
3、判断文件夹是否存在
if [ -d "/data/" ];then
echo "文件夹存在"
else
echo "文件夹不存在"
fi
4、判断文件是否存在
if [ -f "/data/filename" ];then
echo "文件存在"
else
echo "文件不存在"
fi
5、文件比较符
参数 | 参数说明 |
---|---|
-e | 判断对象是否存在 |
-d | 判断对象是否存在,并且为目录 |
-f | 判断对象是否存在,并且为常规文件 |
-L | 判断对象是否存在,并且为符号链接 |
-h | 判断对象是否存在,并且为软链接 |
-s | 判断对象是否存在,并且长度不为0 |
-r | 判断对象是否存在,并且可读 |
-w | 判断对象是否存在,并且可写 |
-x | 判断对象是否存在,并且可执行 |
-O | 判断对象是否存在,并且属于当前用户 |
-G | 判断对象是否存在,并且属于当前用户组 |
-nt | 判断file1是否比file2新 [ "/data/file1" -nt "/data/file2" ] |
-ot | 判断file1是否比file2旧 [ "/data/file1" -ot "/data/file2" ] |