注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

谷搜互联网应用www.iguso.com

谷搜专注企业邮箱十二年

 
 
 

日志

 
 

shell脚本中的逻辑判断  

2015-03-11 10:51:49|  分类: Linux技术文章 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

如果你学过C或者其他语言,相信你不会对if 陌生,在shell脚本中我们同样可以使用if逻辑判断。在shell中if判断的基本语法为:

  1)不带else

  if 判断语句; then

  command

  fi

  

[image]

 

  在if1.sh中出现了 ((a<60))这样的形式,这是shell脚本中特有的格式,外贸企业邮箱用一个小括号或者不用都会报错,请记住这个格式,即可。执行结果为:

  

[image]

 

  2)带有else

  if 判断语句 ; then

  command

  else

  command

  fi

  

[image]

 

  执行结果为:

  

[image]

 

  3)带有elif

  if 判断语句一 ; then

  command

  elif 判断语句二; then

  command

  else

  command

  fi

  

[image]

 

  这里的 && 表示“并且”的意思,企业邮箱当然你也可以使用 || 表示“或者”,执行结果:

  

[image]

 

  以上只是简单的介绍了if语句的结构。在判断数值大小除了可以用”(( ))”的形式外,还可以使用”[ ]”。但是就不能使用>, < , = 这样的符号了,要使用 -lt (小于),-gt (大于),-le (小于等于),-ge (大于等于),-eq (等于),-ne(不等于)。

  

[image]

 

  再看看if中使用 && 和 ||的情况。

  

[image]

 

  shell 脚本中if还经常判断关于档案属性,比如判断是普通文件还是目录,判断文件是否有读写执行权限等。常用的也就几个选项:

  -e :判断文件或目录是否存在

  -d :判断是不是目录,并是否存在

  -f :判断是否是普通文件,并存在

  -r :判断文档是否有读权限

  -w :判断是否有写权限

  -x :判断是否可执行

  使用if判断时,具体格式为: if [ -e filename ] ; then

  

[image]

 

  在shell 脚本中,除了用if来判断逻辑外,还有一种常用的方式,那就是case了。具体格式为:

  case 变量 in

  value1)

  command

  ;;

  value2)

  command

  ;;

  value3)

  command

  ;;

  *)

  command

  ;;

  esac

  上面的结构中,不限制value的个数,*则代表除了上面的value外的其他值。下面笔者写一个判断输入数值是奇数或者偶数的脚本。

  

[image]

 

  $a 的值或为1或为0,美国空间执行结果为:

  

[image]

 

  也可以看一下执行过程:

  

[image]

 

  case脚本常用于编写系统服务的启动脚本,例如/etc/init.d/iptables中就用到了,你不妨去查看一下。

  评论这张
 
阅读(9)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017