语法格式

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 ]

最新文章

  1. 常见css水平自适应布局
  2. LookUpEditPopup自动调整宽度
  3. C#For循环
  4. php include
  5. 动态调用wcf接口服务
  6. 编译小结(6)认识Automake
  7. Unix/Linux中shell调用sqlplus的方式
  8. php分页笔记
  9. g++的常用参数
  10. C#Log4net日志记录组件的使用
  11. 前端MVVM框架avalon - 模型转换1
  12. stm32的定时器学习
  13. Gson解析json字符串、json数组转换成对象
  14. Java 的字节流文件读取(一)
  15. 巡风源码阅读与分析---nascan.py
  16. sql server 性能调优之 当前用户请求分析 (1)
  17. .net 报错汇总——持续更新
  18. Android&amp;Java面试题大全—金九银十面试必备
  19. 从零开始一起学习SLAM | 点云平滑法线估计
  20. BitSet的用法

热门文章

  1. Linux下MySQL的彻底卸载和安装配置字符集
  2. C++ Primer 5th 第4章 表达式
  3. select count(1) from table where ..这句sql语句的作用
  4. 二维指针*(void **)的研究(uC/OS-II案例) 《转载》
  5. secureCRT命令大全
  6. MySQL常用聚合函数
  7. Activity切换效果(overridePendingTransition)
  8. java I/O之装饰者模式
  9. BZOJ1132: [POI2008]Tro
  10. 深入理解Java的protected修饰符