进程管理及shell进阶

1、显示统计占用系统内存最多的进程,并排序。

ps axo pid,cmd,%mem --sort -%mem | head -10   显示占用系统内存最多的10个进程

在这里插入图片描述
2、编写脚本,使用for和while分别实现192.168.0.0/24网段内,地址是否能够ping通,若ping通则输出"success!",若ping不通则输出"fail!"

for循环
#!/bin/bash
for((i=1;i<=254;i++))                                                                                                                                                                      
do
    ping -c 1 192.168.45.$i &>/dev/null
    if [ $? -eq 0 ];then
        echo "ping 192.168.45.$i success!"
    else
        echo "ping 192.168.45.$i fail!"
    fi
done
while循环
#!/bin/bash
i=1
while [ "$i" -le 254 ]
do
    ping -c 1 192.168.45.$i &> /dev/null
    if [ "$?" -eq 0 ];then
        echo "ping 192.168.45.$i success!"
    else
        echo "ping 192.168.45.$i fail!"
    fi                                                                                                                                                                                     
    let i++
done

在这里插入图片描述
3、每周的工作日1:30,将/etc备份至/backup目录中,保存的文件名称格式 为“etcbak-yyyy-mm-dd-HH.tar.xz”,其中日期是前一天的时间

创建备份脚本
[root@centos7 ~]#vim /data/scripts/bak_etc.sh
#!/bin/bash
tar -Jcvf /backup/etcbak-`date -d "-1 day" +%Y-%m-%d-%H`.tar.xz /etc/

创建计划任务
[root@centos7 ~]#crontab -e
30 1 * * 1-5  /bin/bash /data/scripts/bak_etc.sh

4、工作日时间,每10分钟执行一次磁盘空间检查,一旦发现任何分区利用率高 于80%,就发送邮件报警

创建磁盘检查脚本
[root@centos7 ~]#vim /data/scripts/checkdisk.sh
#!/bin/bash
Warning=80
Use=`sed -nr '/^\/dev\/sd/s#.* ([0-9]+)%.*#\1#p'`
[ $Use -gt $Warning ] && echo "磁盘分区利用率高于$Warning%!"

创建计划任务
[root@centos7 ~]#crontab -e
*/10 * * * 1-5  /bin/bash /data/scripts/diskcheck.sh
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值