美文网首页
shell-逻辑表达式

shell-逻辑表达式

作者: _str_ | 来源:发表于2019-08-08 08:21 被阅读0次

逻辑表达式

if判断

if...then...fi

if [ 条件判断式 ];then
       命令     当条件判断式成立时,执行这条命令

if ... then ... else....fi

一颗红心,两手准备

if [ 条件判断式 ]; then
    当条件判断式成立时,可以进行的指令工作内容;
else
    当条件判断式不成立时,可以进行的指令工作内容;
fi

if ... elif ... elif ... else ... fi

if [ 条件判断式一 ]; then
    当条件判断式一成立时,可以进行的指令工作内容;
elif [ 条件判断式二 ]; then
    当条件判断式二成立时,可以进行的指令工作内容;
else
    当条件判断式一与二均不成立时,可以进行的指令工作内容;
fi

利用 case ..... esac 判断

case  $变量名称 in   <==关键字为 case ,还有变量前有钱字号
  "第一个变量内容")   <==每个变量内容建议用双引号括起来,关键字则为小括号 )
    程序段
    ;;            <==每个类别结尾使用两个连续的分号来处理!
  "第二个变量内容")
    程序段
    ;;
  *)                  <==最后一个变量内容都会用 * 来代表所有其他值
    不包含第一个变量内容与第二个变量内容的其他程序运行段
    exit 1
    ;;
esac                  <==反过来写,结束当前语句结构!

模式还可以是多个

#!/bin/bash
cat << EOF
m|M) show memory usages;
d|D) show disk usages;
q|Q) quit
EOF
read -p "Your choice" choice
case $choice in
m|M) #####
        free -m
        ;;
d|D)  #####
        df -h
        ;;
q|Q)  #####
        exit
        ;;
*)
        echo "Invalid input"
        ;;
esac

while...do..done(不确定的循环)

while [ condition ]  ==>中括号内的状态就是判断式
do            ==> do 是循环的开始!
    代码段
    代码段
done          ==> done 是循环的结束

计数

n=0
while [ "$n" -lt 5 ]
do
   let n++
   echo "$n"
done

读文件

while read line
do
    echo $line
done < /etc/passwd

for do done (固定的循环)

for var in con1 con2 con3 ...
do
    程序段
done

var 是变量名
con1 con2 con3 是常量,就是具体的数据
也可以是一个已经被赋值的变量, 写法 ${val1} ${val2}
以上的例子来说,这个$var的变量内容在循环工作时:
1.第一次循环时,$var的内容为con1;
2.第二次循环时,$var的内容时con2;
3.第三次循环时,$var的内容是con3;
4....

for循环中变量的取值方式

a 从一组字符串中取值

for var in one two three four five
do 
     echo    "****************************"
     echo   '$var   is '    $var

b 从位置变量中取值

for var
do   
     echo  '-----------------------------'
     echo   '$var   is '    $var
done

c 从累计变化的格式中取值

#!/bin/bash 

for    ((var=1;var<=10;var++))
do
    echo   "------------------------" 
    echo   '$var   is '    $var
done

d 从命令结果中取值

#!/bin/bash
for   var   in   $(cat    file.txt)
do
    echo  " ------------------------" 
    echo   '$var   is '    $var
done

IFS

for i in {1..5}
do
  echo $i
done
IFS=$'\n'
for line in $(cat test.sh)
do
 echo "--------"
 echo $line
done
export IFS=$IFS          这个是按照回车符分割可以判断有多少行

break continue

相关文章

  • shell-逻辑表达式

    逻辑表达式 if判断 if...then...fi if ... then ... else....fi if ....

  • Excel if 函数

    公式 有三个参数 =IF(逻辑表达式,"逻辑表达式为真的选项","逻辑表达式为假的表达式") 解释:如果逻辑表达式...

  • JS常用知识点

    1. 逻辑运算符(重) 短路运算(逻辑中断) 逻辑与 语法:表达式 1 && 表达式2 逻辑或 语法: 表达式...

  • shell-判断表达式

    shell-6-判断表达式 test 判断符号 在中括号 [] 内的每个元件都需要有空白键来分隔在中括号内的变量,...

  • shell测试语句和表达式

    测试语句 条件表达式 逻辑表达式 常见的逻辑表达式有: && 和 || # 雷同C 语言中 && 和|| ...

  • if,while

    1. if结构 if条件或逻辑表达式: print(‘条件成立’) elif条件或逻辑表达式: print(‘...

  • 「JS」表达式与运算符

    表达式 运算符=== 全等符号==! 取反&& 逻辑与|| 逻辑或 元算符优先级 表达式 表达式为 JavaScr...

  • 使用pyparsing实现布尔表达式计算

    语言及语法定义 布尔表达式包含:逻辑表达式 and or not,关系表达式 >, >=, ==, <=, < 源...

  • JS中表达式返回值

    赋值表达式,返回的值是等号右边的值 逻辑表达式:或‖返回第一个为真的表达式的值,与&&返回最后为真的表达式值 逻辑...

  • Java学习之逻辑运算符(&&、||和!)

    逻辑运算符 逻辑运算符把各个运算的关系表达式连接起来组成一个复杂的逻辑表达式,以判断程序中的表达式是否成立,判断的...

网友评论

      本文标题:shell-逻辑表达式

      本文链接:https://www.haomeiwen.com/subject/dpsidctx.html