Shell学习-流程控制、逻辑运算符

判断语句:if else

if语法

多行写法语法

if  (( 条件 ))   
then        如果条件为真,就执行该命令
    命令
fi           结束if判断

可以将if语句放入一行语法

if 条件;then 命令;fi
if else 语法
if  (( 条件 ))
then
   命令
else
   命令
fi
if elif else 语法
if  (( 条件 ))
then
   命令1
elif (( 条件 ))
then
    命令2
elif 条件3
then
    命令3
……
else
   命令N
fi

case语句

case var in             定义变量;var代表是变量名
1)                      匹配模式1;
    command1            需要执行的语句
    ;;                  两个分号代表命令结束(break)
2)
    command2
    ;;
3)
    command3
    ;;
*)                      default,不满足以上模式,默认执行*)下面的语句
    command4
    ;;
esac                            esac表示case语句结束

while语句

while用于循环一系列的语句

两种语法

单行while语法
while 条件;do 命令;done
多行while语法
while 条件
do 
  命令1
  命令2
  命令3
  ...
  continue;#while中continue用于跳出当前这一次循环,进入下一次循环
  break;#break用于结束整个循环
done

for循环语句

列表for循环:用于将一组命令执行已知的次数

基本语法格式

for variable in (( xx;xx;xx ))
do
    command
done
或者
for variable in list
do
    command
done

逻辑运算符的组合

运算符

使用格式

说明

&& 或 -a

条件1 && 条件2

逻辑与运算符,当 条件1 和 条件2 同时成立时,整个表达式才成立。 如果检测到 条件1 的退出状态为 0,就不会再检测 条件2

|| 或 -o

条件1 || 条件2

逻辑或运算符,条件1 和 条件2 两个表达式中只要有一个成立,整个表达式就成立。 如果检测到 条件1 的退出状态为 1,就不会再检测 条件2

!

!条件

逻辑非运算符,相当于“取反”的效果。如果 条件 成立,那么整个表达式就不成立;如果 条件 不成立,那么整个表达式就成立。

比较运算符

参数

说明

-eq

等于则为真

-ne

不等于则为真

-gt

大于则为真

-ge

大于等于则为真

-lt

小于则为真

-le

小于等于则为真

文件表达式

-e filename 如果 filename存在,则为真

-d filename 如果 filename为目录,则为真

-f filename 如果 filename为常规文件,则为真

-L filename 如果 filename为符号链接,则为真

-r filename 如果 filename可读,则为真

-w filename 如果 filename可写,则为真

-x filename 如果 filename可执行,则为真

-s filename 如果文件长度不为0,则为真

-h filename 如果文件是软链接,则为真

filename1 -nt filename2 如果 filename1比 filename2新,则为真。

filename1 -ot filename2 如果 filename1比 filename2旧,则为真。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值