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

文件夹不存在则创建

1
2
3
4
5
if [ ! -d "/data/" ];then
  mkdir /data
else
  echo "文件夹已经存在"
fi

文件存在则删除

1
2
3
4
5
if [ ! -f "/data/filename" ];then
  echo "文件不存在"
else
  rm -f /data/filename
fi

判断文件夹是否存在

1
2
3
4
5
if [ -d "/data/" ];then
  echo "文件夹存在"
else
  echo "文件夹不存在"
fi

判断文件是否存在

1
2
3
4
5
if [ -f "/data/filename" ];then
  echo "文件存在"
else
  echo "文件不存在"
fi

文件比较符

1
2
3
4
5
6
7
8
9
10
11
12
13
-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" ]

  


 
posted @   昵称昵称昵称  阅读(126)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 25岁的心里话
点击右上角即可分享
微信分享提示