在Linux的系统Shell脚本中使用if语句的方法

   Bourne Shell 的 if 语句和大部分编程语言一样 - 检测条件是否真实,如果条件为真,shell 会执行这个 if 语句指定的代码块,如果条件为假,shell 就会跳过 if 代码块,继续执行之后的代码。


  if 语句的语法:

  代码如下:

  if [ 判断条件 ]

  then

  command1

  command2

  ……..

  last_command

  fi

Example:

#!/bin/bash

  number=150

  if [ $number -eq 150 ]

  then

  echo "Number is 150"

  fi

  if-else 语句:

  除了标准的 if 语句之外,我们还可以加入 else 代码块来扩展 if 语句。这么做的主要目的是:如果 if 条件为真,执行 if 语句里的代码块,如果 if 条件为假,执行 else 语句里的代码块。

  语法:

  代码如下:

  if [ 判断条件 ]

  then

  command1

  command2

  ……..

  last_command

  else

  command1

  command2

  ……..

  last_command

  fi

  Example:

  代码如下:

  #!/bin/bash

  number=150

  if [ $number -gt 250 ]

  then

  echo "Number is greater"

  else

  echo "Number is smaller"

  fi

  If..elif..else..fi 语句 (简写的 else if)

  Bourne Shell 的 if 语句语法中,else 语句里的代码块会在 if 条件为假时执行。我们还可以将 if 语句嵌套到一起,来实现多重条件的检测。我们可以使用 elif 语句(else if 的缩写)来构建多重条件的检测。

  语法 :

  代码如下:

  if [ 判断条件1 ]

  then

  command1

  command2

  ……..

  last_command

  elif [ 判断条件2 ]

  then

  command1

  command2

  ……..

  last_command

  else

  command1

  command2

  ……..

  last_command

  fi

  Example :

  代码如下:

  #!/bin/bash

  number=150

  if [ $number -gt 300 ]

  then

  echo "Number is greater"

  elif [ $number -lt 300 ]

  then

  echo "Number is Smaller"

  else

  echo "Number is equal to actual value"

  fi

  多重 if 语句 :

  If 和 else 语句可以在一个 bash 脚本里相互嵌套。关键词 “fi” 表示里层 if 语句的结束,所有 if 语句必须使用 关键词 “fi” 来结束。

  基本 if 语句的嵌套语法:

  代码如下:

  if [ 判断条件1 ]

  then

  command1

  command2

  ……..

  last_command

  else

  if [ 判断条件2 ]

  then

  command1

  command2

  ……..

  last_command

  else

  command1

  command2

  ……..

  last_command

  fi

  fi

  Example:

  代码如下:

  #!/bin/bash

  number=150

  if [ $number -eq 150 ]

  then

  echo "Number is 150"

  else

  if [ $number -gt 150 ]

  then

  echo "Number is greater"

  else

  echo "'Number is smaller"

  fi

  fi

时间: 2024-10-07 20:34:29

在Linux的系统Shell脚本中使用if语句的方法的相关文章

Shell脚本中获取进程ID的方法

 这篇文章主要介绍了Shell脚本中获取进程ID的方法,我想要知道运行中脚本子shell的进程id,我该如何在shell脚本中得到PID,阅读本文即可找到你想要答案,需要的朋友可以参考下     提问: 我想要知道运行中脚本子shell的进程id.我该如何在shell脚本中得到PID. 当我在执行shell脚本时,它会启动一个叫子shell的进程.作为主shell的子进程,子shell将shell脚本中的命令作为批处理运行(因此称为"批处理进程"). 在某些情况下,你也许想要知道运行中

Shell 脚本中执行mysql语句

    对于自动化运维,诸如备份恢复之类的,DBA经常需要将SQL语句封装到shell脚本.本文描述了在Linux环境下mysql数据库中,shell脚本下调用sql语句的几种方法,供大家参考.对于脚本输出的结果美化,需要进一步完善和调整.以下为具体的示例及其方法.   1.将SQL语句直接嵌入到shell脚本文件中 --演示环境 [root@SZDB ~]# more /etc/issue CentOS release 5.9 (Final) Kernel \r on an \m root@l

Shell脚本中执行sql语句操作mysql的5种方法_linux shell

对于自动化运维,诸如备份恢复之类的,DBA经常需要将SQL语句封装到shell脚本.本文描述了在Linux环境下mysql数据库中,shell脚本下调用sql语句的几种方法,供大家参考.对于脚本输出的结果美化,需要进一步完善和调整.以下为具体的示例及其方法. 1.将SQL语句直接嵌入到shell脚本文件中 复制代码 代码如下: --演示环境  [root@SZDB ~]# more /etc/issue  CentOS release 5.9 (Final)  Kernel \r on an \

Shell脚本中获取进程ID的方法_linux shell

提问: 我想要知道运行中脚本子shell的进程id.我该如何在shell脚本中得到PID. 当我在执行shell脚本时,它会启动一个叫子shell的进程.作为主shell的子进程,子shell将shell脚本中的命令作为批处理运行(因此称为"批处理进程"). 在某些情况下,你也许想要知道运行中的子shell的PID.这个PID信息可以在不同的情况下使用.比如,你可以使用shell脚本的PID在/tmp下创建一个唯一的临时文件.有时侯脚本需要检测所有运行的进程,它可以从进程列表中排除自身

Shell脚本中让进程休眠的方法(sleep用法)_linux shell

有时候写Shell的脚本,用于顺序执行一系列的程序. 有些程序在停止之后并没能立即退出,就例如有一个 tomcat 挂了,就算是用 kill -9 命令也还没瞬间就结束掉. 这么如果 shell 还没等其退出就接着执行下一行,这么就出乱子了. 刚知道了原来 shell 也能有 sleep 的参数. 复制代码 代码如下: sleep 1 睡眠1秒 sleep 1s 睡眠1秒 sleep 1m 睡眠1分 sleep 1h 睡眠1小时 用法如下,例如重启tomcat: 复制代码 代码如下: #!/bi

Linux系统shell脚本编程――生产实战案例

Linux系统shell脚本编程――生产实战案例 在日常的生产环境中,可能会遇到需要批量检查内网目前在线的主机IP地址有哪些,还可能需要检查这些在线的主机哪些端口是开放状态,因此依靠手工来检查是可以实现,但比较费时费力,所以需要结合shell脚本来实现批量检查的功能,那么今天就来做个小小的实验. 1.开发脚本前准备 一般大家都知道,测试主机是否在线,常用的命令无非就是ping.nmap,因此,首先找一个地址来测试下ping命令的效果 [root@centos6 scripts]# ping 17

Linux shell脚本中连接字符串的方法

 这篇文章主要介绍了Linux shell脚本中连接字符串的方法,大家参考使用吧 如果想要在变量后面添加一个字符,可以用一下方法:   代码如下: $value1=home $value2=${value1}"=" echo $value2     把要添加的字符串变量添加{},并且需要把$放到外面. 这样输出的结果是:home=,也就是说连接成功.   又如:     代码如下: [root@localhost sh]# var1=/etc/ [root@localhost sh]#

Linux/Unix shell 脚本中调用SQL,RMAN脚本

        Linux/Unix shell脚本中调用或执行SQL,RMAN 等为自动化作业以及多次反复执行提供了极大的便利,因此通过Linux/Unix shell来完成Oracle的相关工作,也是DBA必不可少的技能之一.本文针对Linux/Unix shell脚本调用sql, rman 脚本给出了相关示例.   一.由shell脚本调用sql,rman脚本 1.shell脚本调用sql脚本 #首先编辑sql文件 oracle@SZDB:~> more dept.sql connect

详解Linux交互式shell脚本中创建对话框实例教程

当你在终端环境下安装新的软件时,你可以经常看到信息对话框弹出,需要你的输入.对话框的类型有密码箱,检查表,菜单,等等.他们可以引导你以一种直观的方式输入必要的信息,使用这样的用户友好的对话框的好处是显而易见的.如下图所示:     当你写一个交互式shell脚本,你可以使用这样的对话框来接受用户的输入.whiptail可以在shell脚本中创建基于终端的对话框,消息框的过程,类似于Zenity或xdialog GUI脚本代码.预先安装在所有的Linux发布版本中. 下面来看看whiptail的用