linux 中的if  else语句

在shell中。if语句有三种形式,如下:

第一种:

if  condition

then

command

else

command

在这种形式中,其中和c语言不同到是,condition实际上是一个语句列表,而不是一般的布尔表达式(也就是,最后到判断是以condition退出的状态为判断依据,0表示真,非0表示假,这和c语言中恰好相反)。

在shell中命令或者函数在退出时都会返回一个小小的整数给调用他的程序,这是命令的退出状态。

参考:http://blog.csdn.net/lyhdream/article/details/8875164

一下看一个例子:

以上例子中:head -1 /etc/passwd 的返回状态为0,表示真

head -1 /etc/shadow  的返回状态为1,表示假

我们新建一个文件judge.sh,写入以下代码:

judge(){
if head -1 /etc/passwd 
then
echo 'true'
else
echo 'false'
fi
}
judge

执行结果:

可以看到打印出true,

将以上函数的if head -1 /etc/passwd 改为if  head -1 /etc/shadow

执行结果:

第二种:

大多数情况下,可以使用测试命令(test)来对条件进行测试。比如可以比较字符串、判断文件是否存在及是否可读等等,test命令也可以[ ]来代替,这是他的另一种形式。

例如 :if  test  2>3  等价于  if  [ 2>3 ](注意[ ]的开始和结束都有空格,打于符号2和3之间没有空格)

将以上函数改为:

judge(){
if test   "aaa" = "bbb"
then
echo 'true'
else
echo 'false'
fi
}
judge

执行结果:

第三种(即使通与test的另一种形式):

将if test   "aaa" = "bbb" 改为  if [ "aaa" = "bbb"]

执行结果:

注意:if  test  2>3  与 if  test  2 > 3 是有 区别的,注意比较符号之间的空格

if [ 2>3 ]  与 [ 2 > 3 ]  也是有区别的,同上

linux 中的if else语句相关推荐

  1. if else语句linux,linux 中的if else语句

    linux 中的if  else语句 在shell中.if语句有三种形式,如下: 第一种: if  condition then command else command 在这种形式中,其中和c语言不 ...

  2. Linux中的if-then语句

    if-then是条件选择语句,及根据if后面的条件的执行情况在决定程序的执行流程. 但是linux中if只能根据条件命令的退出状态码来判断.如果命令成功执行,则状态退出码为0,执行then部分的代码. ...

  3. linux 软件集成工具箱,在PB中动态修改SQL语句

    在PB中动态修改SQL语句 分享到: 江苏省南通电信局网管中心 黄莹 ---- PowerBuilder是图形界面的Client/Server应用程序开发环境,可以很容易开发出功能强大的应用程序,在当 ...

  4. linux 条件语句关键词,Linux中条件语句

    Linux中备份一个jar包,需要既判断进程是否停止,又判断文件是否存在 1. 进程停了,文件存在则备份 2.进程停了,文件不存在,无需备份 3. 进程在跑,停止进程:文件存在,将文件进行备份 4. ...

  5. linux中多个if嵌套使用方法,Objective-C嵌套if语句

    在Objective-C编程中,嵌套if-else语句是合法的,可以在一个if或else if语句中使用if或else if语句. 语法 嵌套if语句的语法如下 - if( boolean_expre ...

  6. linux在命令行if,Linux命令之if - Bash中的条件判断语句

    用途说明 Shell中的条件判断语句,与其他编程语言类似. 如果需要知道有哪些条件判断方式,通过man test就可以得到帮助. 常用格式 格式一 if 条件; then 语句 fi 格式二 if 条 ...

  7. Linux之shell中的case in语句

    文章目录 shell中的case in 语句 1.case in 的用法 2.case in和正则表达式 shell中的case in 语句 1.case in 的用法 格式: 1 | case ex ...

  8. linux用户空间 限制吗,在Linux中限制用户空间

    在Linux中限制用户的磁盘使用空间使用的是Quota,一般Quota在安装Linux时就已包括在内核中,不需要另行安装.Quota可以从两方面指定磁盘的储存限制: 使用者所能够支配的索引节点(ino ...

  9. linux中的shell有printf吗,Linux Shell系列教程之(八)Shell printf命令详解

    在上一篇:Linux Shell系列教程之(七)Shell输出这篇文章中,已经对Shell printf命令有了一个简略的介绍,本篇给大家详细介绍下Shell中的printf命令. 一.Shell p ...

最新文章

  1. Windows API获取系统配置文件的配置参数
  2. python基础入门(Peak带你学python)
  3. JVM之堆Heap参数调优入门
  4. php下载https图片,php下载https图片报错Failed to enable crypto
  5. 虚虚实实,亦假亦真的 ValueTuple,绝对能眩晕你
  6. 如何阅读3,500万个博客?
  7. 盘点那些有“数学味”的建筑
  8. App-v Client的部署
  9. MDF文件在SQL Server数据库中恢复技术
  10. pandas--带有重复值的轴索引
  11. 【二叉树】二叉树遍历总结
  12. spring boot默认扫描的路径
  13. docker搭建MySQL集群
  14. 串联两个路由器共享宽带上网
  15. 非常好用的开源矢量地图切片工具
  16. [词根词缀]fact/fug/fuse/词源知识F的内容
  17. idea恢复被覆盖的本地未提交代码
  18. FTP的主动模式和被动模式工作原理
  19. 信息工程计算机应用技术专业介绍,信息工程系举行2019级新生计算机应用技术专业介绍会...
  20. 手机拨号按键歌曲谱子

热门文章

  1. 用BP人工神经网络识别手写数字——《Python也可以》之三
  2. Java.util包中常用的类
  3. python 字符串格式化,使用f前缀
  4. 世界不乏爱因斯坦,缺乏的适合他茁壮成长的环境
  5. Android非UI线程更新UI的几种方法
  6. winform 安装部署
  7. Web Worker 使用教程
  8. C++内存泄露检测原理
  9. C++逐行读取文本文件的正确做法
  10. Windows下使用静态库