首页 电脑 电脑学堂 查看内容

shell之if判断的总结

2011-7-6 12:11 913 0

摘要: shell if 判断总结与实例if [ command ];then   符合该条件执行的语句  elif [ command ];then   符...
关键词: nbsp num echo 如果 文件 then 语句 STRING FILE input

shell if 判断总结与实例if [ command ];then   符合该条件执行的语句  elif [ command ];then   符合该条件执行的语句  else   符合该条件执行的语句fi[-d DIR ]     如果DIR存在并且是一个目录则为真 [ -f FILE ]   如果FILE存在且是一个普通文件则为真 [ -e dir||file] 如果指定的文件或者目录存在返回真[ -z STRING ] 如果STRING的长度为零则为真 [ -n STRING ] 如果STRING的长度非零则为真 [ STRING1 = STRING2 ] 如果两个字符串相同则为真 [ STRING1 != STRING2 ] 如果字符串不相同则为真 [ ARG1 OP ARG2 ] ARG1和ARG2应该是整数或者取值为整数的变量,OP是-eq(等于)-ne(不等于)-lt(小于)-le(小于等于)-gt(大于)-ge(大于等于)之中的一个 [ -r FILE ]   文件存在并且可读权限[ -w FILE ]   文件存在并且可写权限[ -x FILE ]   文件存在并且能执行权限  注意:变量取值STRINGx 最好放在""内;      []和STRING中间有空格;      判断大小比如 -eq 千万注意一定要带"-",使用看下面的例子1、if语句的基本结构实现:#!/bin/bashnum=$(ps -ef | grep http | grep -v grep | wc -l)if [ "$num" -lt  "11" ];then echo "haha"  elif [ "$num" -gt  "11" ] && [  "$num" -lt  "15" ];then echo "no !"else echo "great than 15"fi说明:[ "$num" -gt  "11" ] && [  "$num" -lt  "15" ] 等价于 [ "$num" -gt  "11"  -a  "$num" -lt  "15" ]2、if判断结合read#!/bin/bash#echo -n "please input a num:"#read num#echo "input num is $num"read -p "please input a num:" numecho -e "input num is $num judging now"if [ "$num" -lt "60" ];then  echo "you are lost,please work harder!" elif [ "$num" -ge "60" ] && [ "$num" -lt "85" ];then  echo "good job,baby!" elif [ "$num" -le "100" ] && [ "$num" -ge "85" ];then  echo "pretty good,cheer" else   echo "input num is wrong"fi说明:通过echo 输出(#注销掉的)和read -p结果是一样的,只需要注意echo的参数设置。      echo -e参数使输出中的反斜线(\)的说明起作用      echo -n参数使引号后的内容接着输出(不换行) 3、文件属性判断 #!/bin/bashif [ ! -d /tmp/k ];then   \\注意空格,感叹号的前后都有一个空格,表示"非"的意思 echo "k is not a document" else echo "you are right"fi
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部