您的位置:首页 > 运维架构 > Shell

shell中用于比较的一些基本的操作总结

2013-10-07 08:54 309 查看
原文:转自 http://www.itokit.com/2011/0321/35782.html

条件测试是程序设计中不可缺少的一部分,以下就是shell程序设计中常见的条件测试方法.

“test”或”[ ]”命令:

  使用这二个命令用来测试条件是真还是假.使用方法:

if test –f file.c
then …
fi
#或
if [ -f file.c ]
then …
fi


  当条件满足(即为真)时,则执行then后面的语句.

  注意在使用方括号”[]”来测试条件时,方括号要与测试条 件之间留出空格.

测试条件分类:

  字符串比较类\算术比较类\与文件相关的条件测试类

字符串比较类:

  string1 = string2 如果两字符串相同,则结果为真

  string1 != string2 如果两字符串不相同,则结果为真

  -n string 如果字符串不是空,则结果为真

  -z string 如果字符串是空,则结果为真

  注意在比较相等或不等的时侯,=/!=的两边要与比较的两字符串要有空格符相隔开.

算术比较类:

expression1 –eq expression2 #如果两个表达式相等,则结果为真
expression1 –ne expression2 #如果两个表达式不等,则结果为真
expression1 –gt expression2 #如果前一个表达式大于后一个表达式,则结果为真
expression1 –ge expression2 #如果前一个表达式大于或等于后一个表达式,则结果为真
expression1 –lt expression2 #如果前一个表达式小于后一个表达式,则结果为真
expression1 –le expression2 #如果前一个表达式小于或等于后一个表达式,则结果为真
! expression #取表达式的非,即表达式为假,则结果为真


与文件有关的文件测试类:
  文件条件测试 结果

-d file #如果文件是一个子目录,则结果为真
-e file #如果文件存在,则结果为真
-f file #如果文件是一个普通文件,则结果为真
-g file #如果文件的set-group-id被设置,则结果为真
-r file #如果文件可读,则结果为真
-s file #如果文件的长度不为0,则结果为真
-u file #如果文件的set-user-id被设置,则结果为真
-w file #如果文件可写,则结果为真
-x file #如果文件可执行,则结果为真
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: