Linux-学习-判断目录是否存在
2016-11-20 12:04
211 查看
判断目录是否存在
shell 判断语句流程控制 “if” 表达式 如果条件为真则执行then后面的部分: if ….; then
…. elif ….; then …. else …. fi
大多数情况下,可以使用测试命令来对条件进行测试。比如可以比较字符串、判断文件是否存在及是否可读等等… 通常用” [ ] “来表示条件测试。注意这里的空格很重要。要确保方括号的空格。
[ -f "somefile" ] :判断是否是一个文件 [ -x "/bin/ls" ] :判断/bin/ls是否存在并有可执行权限 [ -n "$var" ] :判断$var变量是否有值 [ "$a" = "$b" ] :判断$a和$b是否相等 -r file 用户可读为真
-w file 用户可写为真
-x file 用户可执行为真
-f file 文件为正规文件为真
-d file 文件为目录为真
-c file 文件为字符特殊文件为真
-b file 文件为块特殊文件为真
-s file 文件大小非0时为真
-t file 当文件描述符(默认为1)指定的设备为终端时为真
#
含条件选择的shell脚本
对于不含变量的任务简单shell脚本一般能胜任。但在执行一些决策任务时,就需要包含if/then的条件判断了。shell脚本编程支持此类运算,
包括比较运算、判断文件是否存在等。基本的if条件命令选项有: -eq —比较两个参数是否相等(例如,if [ 2 –eq 5 ])
-ne —比较两个参数是否不相等
-lt —参数1是否小于参数2
-le —参数1是否小于等于参数2
-gt —参数1是否大于参数2
-ge —参数1是否大于等于参数2
-f — 检查某文件是否存在(例如,if [ -f “filename” ])
-d — 检查目录是否存在
例子:
**#!/bin/sh** myPath="/var/log/httpd/" myFile="/var /log/httpd/access.log"
#这里的-x 参数判断$myPath是否存在并且是否具有可执行权限
if [ ! -x "$myPath"]; then mkdir "$myPath" fi
#这里的-d 参数判断$myPath是否存在
if [ ! -d "$myPath"]; then mkdir "$myPath" fi
#这里的-f参数判断$myFile是否存在
if [ ! -f "$myFile" ] a9e0 ; then touch "$myFile" fi
#其他参数还有-n,-n是判断一个变量是否是否有值
if [ ! -n "$myVar" ]; then echo "$myVar is empty" exit 0 fi
#两个变量判断是否相等
if [ "$var1" = "$var2" ]; then echo ‘$var1 eq $var2′ else echo ‘$var1 not eq $var2′ fi
判断文件是否存在
#!/bin/sh today=`date -d yesterday +%y%m%d` file="apache_$today.tar.gz" cd /home/chenshuo/shell if [ -f "$file" ];then echo "OK" else echo "error $file" >error.log mail -s "fail backup from test" linuxcy@126.com fi
相关文章推荐
- Linux - 判断文件/目录是否存在/具有权限
- Unix学习笔记-------目录遍历实例----Linux下判断是否是一个目录还是一个文件的方法
- linux+笔记:linux下判断一个文件或者目录是否存在
- linux下判断文件和目录是否存在[总结]
- linux下判断文件和目录是否存在[总结]
- linux下判断文件和目录是否存在[总结]
- Linux - 判断文件/目录是否存在/具有权限
- linux下判断文件和目录是否存在
- Shell脚本执行hive语句 | hive以日期建立分区表 | linux schedule程序 | sed替换文件字符串 | shell判断hdfs文件目录是否存在
- c++判断本地目录或本地文件是否存在linux
- linux下python脚本判断目录和文件是否存在
- linux 判断目录是否存在并创建
- Linux - 判断文件/目录是否存在/具有权限
- linux下判断文件和目录是否存在[总结]
- Linux - 判断文件/目录是否存在/具有权限
- 易语言linux下判断目录是否存在
- My way on Linux - [Shell基础] - Bash Shell中判断文件、目录是否存在或者判断其是否具有某类属性(权限)的常用方法
- linux下判断文件和目录是否存在的方法(总结)
- Java判断Ftp服务器目录是否存在,若不存在创建目录
- VC中判断目录,文件是否存在,创建目录,求目录或文件大小的方法