Shell脚本练习----条件语句(if case语句的应用)

志不强者智不达,言不信者行不果。这篇文章主要讲述Shell脚本练习----条件语句(if case语句的应用)相关的知识,希望能为你提供帮助。
【Shell脚本练习----条件语句(if case语句的应用)】**1. 检查用户家目录中的 test.sh 文件是否存在,并且检查是否有执行权限

  1. 提示用户输入100米赛跑的秒数,要求判断秒数大于0且小于等于13秒的进入选拔赛,大于13秒的都淘汰,如果输入其它字符则提示重新输入;进入选拔赛的成员再进一步判断男女性别,男生进男生组,女生进女生组,如果输入错误请提示错误
  2. 用case语句解压根据后缀名为 .tar.gz 或 .tar.bz2 的压缩包到 /opt 目录
  3. 提示用户输入内容,使用if 语句判断输入的内容是否为整数。
  4. 根据上一题再判断输入的内容是奇数还是偶数。
  5. 用if 语句判断主机是否存活
  6. 用case语句在/etc/init.d/目录中写一个firewalld脚本,并加入到系统服务管理中使能够使用 service firewalld start|stop|restart|status 来管理firewalld服务,要求如果命令选项不对,则提示 “用法: $0 start|stop|status|restart”。**
1. 检查用户家目录中的 test.sh 文件是否存在,并且检查是否有执行权限
#!/bin/bash if [ -f ~/test.sh ]; then echo "test.sh文件存在" if [ -x ~/test.sh ]; then echo "test.sh文件有执行权限" else echo "test.sh文件没有执行权限" fi else echo "test.sh文件不存在" fi

Shell脚本练习----条件语句(if case语句的应用)

文章图片

2. 提示用户输入100米赛跑的秒数,要求判断秒数大于0且小于等于13秒的进入选拔赛,大于13秒的都淘汰,如果输入其它字符则提示重新输入;进入选拔赛的成员再进一步判断男女性别,男生进男生组,女生进女生组,如果输入错误请提示错误
#!/bin/bash read -p "请输入你100米赛跑的秒数(整数):" time if [ $time -gt 0 -a $time -le 13 ]; then echo "恭喜你进入选拔赛" read -p "请输入你的性别(男或女):" sex if [ $sex = 男 ]; then echo "恭喜你进入男生组" elif [ $sex = 女 ]; then echo "恭喜你进入女生组" else echo "输入有误,请重新输入" fi elif [ $time -gt 13 ]; then echo "抱歉,你被淘汰了" else echo "输入有误,请重新输入" fi

Shell脚本练习----条件语句(if case语句的应用)

文章图片

3. 用case语句解压根据后缀名为 .tar.gz 或 .tar.bz2 的压缩包到 /opt 目录
#!/bin/bash read -p "请输入压缩包完整名称:" name case $name in *tar.gz) echo "开始解压gz格式tar包" tar zxvf $name -C /opt echo "解压完成" ; ; *tar.bz2) echo "开始解压bz2格式tar包" tar jxvf $name -C /opt echo "解压完成" ; ; *) echo "格式有误" esac

Shell脚本练习----条件语句(if case语句的应用)

文章图片

4. 提示用户输入内容,使用if 语句判断输入的内容是否为整数。然后在判断是奇数还是偶数。(0是偶数)
#!/bin/bash read -p "输入数字:" num if [ $num == 0 ]; then echo "0既是整数又是偶数" else expr $num + 1 & > /dev/null if [ $? =0 ]; then echo "输入的是整数" if [ $[$num % 2] = 0 ]; then echo "输入的是偶数" else echo "输入的是奇数" fi else echo "输入的不是整数,请重新输入" fi fi

有修改,以文字为主,图片没及时换!
Shell脚本练习----条件语句(if case语句的应用)

文章图片

6. 用if 语句判断主机是否存活
#!/bin/bash ping -c 3 -i 0.5 -w 2 $1 & > /dev/null if [ $? -eq 0 ]; then echo "host is online" else echo "host is offline" fi

Shell脚本练习----条件语句(if case语句的应用)

文章图片

7. 用case语句在/etc/init.d/目录中写一个firewalld脚本,并加入到系统服务管理中使能够使用 service firewalld start|stop|restart|status 来管理firewalld服务,要求如果命令选项不对,则提示 “用法: $0 start|stop|status|restart”
#!/bin/bash read -p "输入start|stop|status|restart:来管理防火墙:" firewalld case $firewalld in "start") systemctl start firewalld echo "防火墙已开启" ; ; "stop") systemctl stop firewalld echo "防火墙已关闭" ; ; "restart") systemctl restart firewalld echo "防火墙已重启" ; ; "status") systemctl status firewalld echo "防火墙状态查看" ; ; *) echo "用法:$0start|stop|status|restart" ; ; esac

Shell脚本练习----条件语句(if case语句的应用)

文章图片


    推荐阅读