shell中的if语句
语法格式
if command;then
commands
fi
其中的command包含如下:
shell command
任何shell命令,如果shell命令返回0,代表true,否则,代表false。并且多个command可以同时作为if的判断条件,即可以写为:
if command1;command2;command3;then
commands
fi
此时如果command3返回的结果是0,则运行commands,否则不运行,虽然command1和command2也会运行,但是它们运行的返回结果没有任何影响
test condition 或者 [ condition ]
两者等价,其中的condition可以是数字比较,可以是字符串比较,可以是文件比较:
数字比较
num1 eq num2 等于
num1 ne num2 不等于
num1 gt num2 大于
num1 ge num2 大于等于
num1 lt num2 小于
num1 le num2 小于等于
字符串比较
str1 = str2 等于
str1 != str2 不等于
str1 > str2 大于
str1 < str2 小于
-n str str的长度是否大于0
-z str str的长度是否为0
文件比较
-d file file是否为目录
-f file file是否为文件
-e file file是否存在
-s file file存在并且不为空
-r file file存在且可读
-w file file存在且可写
-x file file存在且可以执行
-O file file存在并且属于当前用户
-G file file存在并且属于当前用户所在的initial group(也叫default group)
file1 -nt file2 file1是否比file2新
file1 -ot file2 file1是否比file2旧
condition也可以复合的,通过&& 或者 || 连接:
[ condition1 ] && [ condition2]
[ condition1 ] || [condition2 ]
最新文章
- 常见css水平自适应布局
- LookUpEditPopup自动调整宽度
- C#For循环
- php include
- 动态调用wcf接口服务
- 编译小结(6)认识Automake
- Unix/Linux中shell调用sqlplus的方式
- php分页笔记
- g++的常用参数
- C#Log4net日志记录组件的使用
- 前端MVVM框架avalon - 模型转换1
- stm32的定时器学习
- Gson解析json字符串、json数组转换成对象
- Java 的字节流文件读取(一)
- 巡风源码阅读与分析---nascan.py
- sql server 性能调优之 当前用户请求分析 (1)
- .net 报错汇总——持续更新
- Android&;Java面试题大全—金九银十面试必备
- 从零开始一起学习SLAM | 点云平滑法线估计
- BitSet的用法
热门文章
- Linux下MySQL的彻底卸载和安装配置字符集
- C++ Primer 5th 第4章 表达式
- select count(1) from table where ..这句sql语句的作用
- 二维指针*(void **)的研究(uC/OS-II案例) 《转载》
- secureCRT命令大全
- MySQL常用聚合函数
- Activity切换效果(overridePendingTransition)
- java I/O之装饰者模式
- BZOJ1132: [POI2008]Tro
- 深入理解Java的protected修饰符