Shell编程中if的语法和常见判断用法

来源:互联网 发布:算法 人民邮电出版社 编辑:程序博客网 时间:2024/05/21 20:21
Shell编程中if的语法和常见判断用法
编程技术TUNA12年12月14日 7:4715970

if, for, while几乎是所有编程语言的关键字,在Shell编程中也不例外,其中if是使用频率最高的,由于Shell编程中不存在对象(Object)的概念,因此在if的比较判断中主要是对字符串、数字的值进行比较判断的:

一. if的基本语法
1. if与[之间要有空格
2. []与判断条件之间也必须有空格
3. ]与;之间不能有空格

二. 对字符串的判断
1. if [ str1=str2 ];then fi #当两个字符串相同时返回真
2. if [ str1!=str2 ];then fi #当两个字符串不相等时返回真
3. if [ -n str1 ];then fi #当字符串的长度大于0时返回真 (判断变量是否有值)
4. if [ -z str1 ];then fi #当字符串的长度为0时返回真

三. 对数字的判断
1. int1 -eq int2 #int1和int2相等
2. int1 -ne int2 #int1不相等int2
3. int1 -gt int2 #int1大于int2
4. int1 -ge int2 #int1大于等于int2
5. int1 -lt int2 #int1小于int2
6. int1 -le int2 #int1小于等于int2

四. 对文件属性的判断
1. -r file #用户可读为真
2. -w file #用户可写为真
3. -x file #用户可执行为真
4. -f file #文件存在且为正规文件为真
5. -d file #如果是存在目录为真
6. -c file #文件存在且为字符设备文件
7. -b file #文件存在且为块设备文件
8. -s file #文件大小为非0为真,可以判断文件是否为空
9. -e file #如果文件存在为真

五. 逻辑判断
1. -a #与
2. -o #或
3. ! #非

相关文章

  • 2012年12月25日[Linux]十条为系统管理员节省时间的命令!
  • 2012年12月08日Linux基础知识之bashrc和profile的用途和区别
  • 2012年11月09日Shell脚本实现Linux回收站功能
  • 2012年11月01日inxi:可一键查询Linux系统软硬件信息的Shell脚本
  • 2012年10月27日Linux Shell脚本中单引号(')和双引号(")的区别
  • 2012年10月24日Linux Shell中的特殊符号汇总
  • 2012年10月09日经常用到的一些Shell技巧
  • 2012年09月28日Shell脚本调试技巧
  • 2012年09月23日[性能优化]通过Shell实现将进程负载均衡到CPU多核
  • 2012年09月18日[Linux]如何在Shell脚本中计算字符串长度?