if 脚本条件判断式

1、单一的条件判断式:

    语法:

if [ 条件判断式 ]; then
    当条件判断式成立时,可以进行的指令工作内容;
fi                             //将if反过来写,就是结束if之意!

  

  && 代表 AND 
  || 代表 or

forexample:

#!/bin/bash
set -x                          //进行查错功能
#program;
#    This program shows the user‘s choice
#History:
#2017/06/21 likui First release
PATH=/bin:/sbin:/uer/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/bin
export PATH

read -p "Please input (Y/y)" yn

if [ "$yn" == "Y" ] || [ "$yn" = "y" ]; then
    echo "OK,continue"                  //if 和 if 之间添加我们需要的代码
    exit 0
fi

if [ "$yn" == "N" ] || [ "$yn" == "n" ]; then
    echo "Oh,interrupt!"
    exit 0
fi

echo "I don‘t know what your choice is "

2、多重、复杂条件判断式

  语法1:

 

# 一个条件判断,分成功进行与失败进行 (else)
if [ 条件判断式 ]; then
    当条件判断式成立时,可以进行的指令工作内容
else
    当条件判断式不成立时,可以进行的指令工作内容
fi

  语法2:

# 多个条件判断 (if ... elif ... elif ... else) 分多种不同情况执行
if [ 条件判断式一 ]; then
    当条件判断式一成立时,可以进行的指令工作内容
elif [ 条件判断式二 ]; then
    当条件判断式二成立时,可以进行的指令工作内容
else
    当条件判断式一与二均不成立时,可以进行的指令工作内容;
fi

forexample1:

  

forexample2:

forexample3:

#!/bin/bash
# Program:
#  You input your demobilization date, I calculate how many days
#  before you demobilize.
# History:
# 2005/08/29  VBird  First release
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~
/bin
export PATH
# 1. 告知用户这支程序的用途,并且告知应该如何输入日期格式?
echo "This program will try to calculate :"
echo "How many days before your demobilization date..."
read -p "Please input your demobilization date (YYYYMMDD ex>20090401):
" date2
# 2. 测试一下,这个输入的内容是否正确?利用正规表示法啰~
date_d=$(echo $date2 |grep ‘[0-9]\{8\}‘) # 看看是否有八个数字
if [ "$date_d" == "" ]; then
  echo "You input the wrong date format...."
  exit 1
fi
# 3. 开始计算日期啰~
declare -i date_dem=`date --date="$date2" +%s` # 退伍日期秒数
declare -i date_now=`date +%s` # 现在日期秒数
declare -i date_total_s=$(($date_dem-$date_now)) # 剩余秒数统计
declare -i date_d=$(($date_total_s/60/60/24)) # 转为日数
if [ "$date_total_s" -lt "0" ]; then # 判断是否已退伍
  echo "You had been demobilization before: " $((-1*$date_d)) "
  ago"
else
declare -i
date_h=$(($(($date_total_s-$date_d*60*60*24))/60/60))
  echo "You will demobilize after $date_d days and $date_h hours."
fi
时间: 2024-11-10 16:41:01

if 脚本条件判断式的相关文章

shell编程 条件判断式----利用 case ..... esac 判断

条件判断式----利用 case ..... esac 判断 case  $变量名称 in   <==关键词为 case ,还有变量前有钱字号 "第一个变量内容")   <==每个变量内容建议用双引号括起来,关键词则为小括号 ) 程序段 ;;            <==每个类别结尾使用两个连续的分号来处理! "第二个变量内容") 程序段 ;; *)                  <==最后一个变量内容都会用 * 来代表所有其它值 不包含

shell编程 条件判断式----利用 if .... then ----多重

条件判断式----利用 if .... then ----多重 在同一个数据的判断中,如果该数据需要进行多种不同的判断时,应该怎么作?举例来说,上面的 sh06.sh 脚本中,我们只要进行一次 $yn 的判断就好 (仅进行一次 if ),不想要作多次 if 的判断. 此时你就得要知道底下的语法了: # 一个条件判断,分成功进行与失败进行 (else) if [ 条件判断式 ]; then 当条件判断式成立时,可以进行的指令工作内容: else 当条件判断式不成立时,可以进行的指令工作内容: fi

条件判断式if和循环语句while及其函数的应用

条件判断式 if..then.case..esac if..then 是最常见的条件判断式,就是当负某个条件判断的时候,就进行某项工作 ,其中"&&"代表AND,"||"代表or if....then..else...fi 格式: if [条件判断语句]: then 当条件判断成立时,可以进行的命令工作内容: fi       // 结束if条件判断 例子:设定  A=3,判断,如果A要是等于3,就会显示3 if [ $A = 3 ]; then  

第十三章、学习 Shell Scripts 条件判断式

利用 if .... then 单层.简单条件判断式 if [ 条件判断式 ]; then 当条件判断式成立时,可以进行的命令工作内容: fi <==将 if 反过来写,就成为 fi !结束 if 之意! && 代表 AND : || 代表 or : [ "$yn" == "Y" -o "$yn" == "y" ]上式可替换为 [ "$yn" == "Y" ] ||

shell编程-条件判断式

条件判断式主要有以下6种类型: [[email protected] test]# ls -l total 8 drwxr-xr-x 2 root root 4096 Jan 17 19:28 shell -rw-r--r-- 1 root root 4 Jan 17 19:29 test.sh [[email protected] test]# [ -d test.sh ] && echo "yes" || echo "no" no [[email

【shell】条件判断式

条件判断式的表示格式: 文件判断式: [[email protected] ~]# [ -e /root/1 ] && echo yes || echo no #注意[]里面的空格,第一个命令为真打印yes,否则打印no yes [[email protected] ~]# [ -f /root/1 ] && echo yes || echo no yes [[email protected] ~]# [ -d /root/1 ] && echo yes |

Shell脚本---条件判断

面向过程     顺序执行     选择执行:if;case     循环执行:for;while;until   循环需有退出条件 选择执行(选择执行的前提,就是条件测试)    条件测试方式(测试条件)     bash命令测试          bash命令有命令执行状态返回值          $?:用于上一条执行的命令状态返回值          0:成功执行          1-255:失败          可以使用exit命令,在脚本中自定义脚本状态返回值,如果不定义,脚本的状

【重点】Shell入门教程:流程控制(3)条件判断式的真假值

之前曾提到,在Bash中什么是真什么是假,是以命令的结束状态是否为0来做判断.传回0,即为真:传回非0,即为假. 在Bash中,这种可以影响程序流程的式子,称为条件判断式.判断式的操作数分成“单元”及“二元”两种.如“-f 文件”可测试文件是否存在,运算符 -f 后接一个操作数“文件”,这种判断式称为“单元”:如“参数 1 -gt 参数2”可测试“参数1”的值是否大于“参数2”,运算符 -gt 的左右各接一个要比较的参数,这种判断式称为“二元”.大多数“单元”的判断式用于判断文件的相关属性,少数

Linux Shell脚本条件判断

Shell条件判断 if list then           do something here elif list then do another thing here else do something else here fi  EX1: #!/bin/sh SYSTEM=`uname -s`    #获取操作系统类型,我本地是linux if [ $SYSTEM = "Linux" ] ; then     #如果是linux的话打印linux字符串 echo "