SHELL——流程控制条件判断

1、判断当前磁盘剩余空间是否有20G,如果小于20G,则将报警邮件发送给管理员,每天检查一次磁盘剩余空间。

2、判断web服务是否运行

        1)、查看进程的方式判断该程序是否运行

        2)、通过查看端口的方式判断该程序是否运行),如果没有运行,则启动该服务。

3、使用curl命令访问第二题的web服务,看能否正常访问,如果能正常访问,则返回web server is running;如果不能正常访问,返回12状态码。


1、判断当前磁盘剩余空间是否有20G,如果小于20G,则将报警邮件发送给管理员,每天检查一次磁盘剩余空间。

(1)、服务端和客户端安装mailx和postfix

#服务端
[root@server ~]# yum install postfix -y
[root@server ~]# systemctl enable postfix --now
 
#客户端
[root@client ~]# yum install sendmail -y

(2)、编写脚本

[root@server ~]# cat mail.sh 
#!/bin/bash
##############################################################
# File Name: mail.sh
# Author:friday
# Email: friday@163.com
# Organization: http://www.Friday.com/friday/
# Created Time : 2023-05-22 13:18:20
# Description:
#########

头歌平台shell脚本入门流程控制部分涵盖多种流程控制语句,以下是一些常见的流程控制语句及其示例: #### if-else语句 写成一行(适用于终端命令提示符): ```bash if [ $(ps -ef | grep -c "ssh") -gt 1 ]; then echo "true"; fi ``` 多行的`if-else`、`if-else-if-else`结构示例: ```bash # if else if condition then command1 command2 ... commandN else command fi # if else-if else if condition1 then command1 elif condition2 then command2 else commandN fi ``` #### case语句 `case`语句用于多条件判断,示例如下: ```bash case 值 in 模式1) command1 command2 ... commandN ;; 模式2) command1 command2 ... commandN ;; esac # 示例使用 echo '输入 1 到 4 之间的数字:' echo '你输入的数字为:' read aNum case $aNum in 1) echo '你选择了 1' ;; 2) echo '你选择了 2' ;; 3) echo '你选择了 3' ;; 4) echo '你选择了 4' ;; *) echo '你没有输入 1 到 4 之间的数字' ;; esac ``` #### 循环语句 循环语句可以在循环内使用任意类型的命令,包括其他循环命令,这种循环叫作嵌套循环(nested loop)。示例如下: ```bash #!/bin/bash # finding files in the dir dir=/usr/games # 修改当前shell的分割符为 : IFS=: ########## Begin ########## # 第一个for循环,遍历$dir ,根据IFS=:指定的":"分割符隔开遍历。 for file in $dir do # 第二个for循环,遍历取值的变量$folder下的文件。 for file in $folder/* do # if语句判断时候具有执行权限。 if [ -x $file ] then echo " $ /usr/games/espdiff" fi done done ######### End ######### ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值