Linux中用case语句,Shell 编程 case语句,case语句怎么用

Shell 编程 case语句,case语句怎么用

db2cba88ec1cfa5c486f3298a6eba24a.png

本篇主要写一些shell脚本条件语句的使用。

条件测试

test 条件表达式

[ 条件表达式 ]

文件测试

-d:测试是否为目录(Directory)。

-e:测试文件或目录是否存在(Exist)。

-f:测试是否为文件(File)。

-r:测试当前用户是否有权限读取(Read)。

-w:测试当前用户是否有权限写入(Write)。

-x:测试是否设置有可执行权限(Excute)。

-nt:判断文件A是否比文件B新。

-ot:判断文件A是否比文件B旧。

-ef:判断两个文件是否为同一个文件,用来判断两个文件是否指向同一个inode。

[root@localhost ~]# test -d /etc/ && echo $?

0

[root@localhost ~]# ls test.txt

ls: cannot access test.txt: No such file or directory

[root@localhost ~]# [ ! -e test.txt ] && touch test.txt

[root@localhost ~]# ls test.txt

test.txt

整数值比较

[ 整数1 操作符 整数2 ]

-eq:等于(Equal)

-ne:不等于(Not Equal)

-gt:大于(Greater Than)

-lt:小于(Lesser Than)

-le:小于等于(Lesser or Equal)

-ge:大于等于(Greater or Equal)

[root@localhost ~]# history | wc -l

294

[root@localhost ~]# [ `history | wc -l` -gt 100 ] && echo "Too many" || echo "Too few"

Too many

[root@localhost ~]# history -c

[root@localhost ~]# [ `history | wc -l` -gt 100 ] && echo "Too many" || echo "Too few"

Too few

字符串比较

=:第一个字符串与第二个字符串相同

!=:第一个字符串与第二个字符串不相同

-z:检查字符串是否为空,对于未定义或赋予空值的变量视为空串

逻辑测试

&&:逻辑与,表示而且,使用test命令测试时,可改为-a。

||:逻辑或,表示或者使用test命令测试时,可改为-o。

!:逻辑否,表示不

if 单分支

[root@localhost ~]# vim score.sh

#!/bin/bash

read -p "请输入成绩:" score

if [ $score -ge 60 ]

then

echo "成绩合格"

fi

[root@localhost ~]# chmod +x score.sh

[root@localhost ~]# ./score.sh

请输入成绩:80

成绩合格

[root@localhost ~]# ./score.sh

请输入成绩:40

if 双分支

[root@localhost ~]# vim score.sh

#!/bin/bash

read -p "请输入成绩:" score

if [ $score -ge 60 ]

then

echo "成绩合格"

else

echo "成绩不合格"

fi

[root@localhost ~]# ./score.sh

请输入成绩:80

成绩合格

[root@localhost ~]# ./score.sh

请输入成绩:40

成绩不合格

if 多分支

[root@localhost ~]# vim score.sh

#!/bin/bash

read -p "请输入成绩:" score

if [ $score -ge 90 ]

then

echo "成绩优秀"

elif [ $score -ge 60 ]

then

echo "成绩合格"

else

echo "成绩不合格"

fi

[root@localhost ~]# ./score.sh

请输入成绩:90

成绩优秀

[root@localhost ~]# ./score.sh

请输入成绩:80

成绩合格

[root@localhost ~]# ./score.sh

请输入成绩:40

成绩不合格

[root@localhost ~]# vim run.sh

if 嵌套

#!/bin/bash

read -p "请输入时间:" time

if [ $time -le 10 ]

then

echo "您已进入决赛"

read -p "请输入性别(man/woman)" sex

if [ $sex = "man" ]

then

echo "您被分到男子组"

else

echo "您被分到女子组"

fi

else

echo "抱歉,您被淘汰"

fi

[root@localhost ~]# chmod +x run.sh

[root@localhost ~]# ./run.sh

请输入时间:9

您已进入决赛

请输入性别(man/woman)man

您被分到男子组

[root@localhost ~]# ./run.sh

请输入时间:9

您已进入决赛

请输入性别(man/woman)woman

您被分到女子组

[root@localhost ~]# ./run.sh

请输入时间:11

抱歉,您被淘汰

http://www.dengb.com/Linuxjc/1373769.htmlwww.dengb.comtruehttp://www.dengb.com/Linuxjc/1373769.htmlTechArticleShell 编程 case语句,case语句怎么用 本篇主要写一些 shell 脚本条件语句的使用。 条件测试 test 条件表达式 [ 条件表达式 ] 文件测试 -d :测试...

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值