第八周作业(马哥Linux)

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

查看占用cpu最多的10个进程

ps –aux |sort –k 3 –nr|head –n 10

查看占用cpu最多的10个进程

ps –aux |sort –k 4 –nr|head –n 10

2、编写脚本,使用for和while分别实现192.168.0.0/24网段内,地址是否能够ping通,若ping通则输出"success!",若ping不通则输出"fail!"
for循环

#!/bin/bash
#
NetId=192.168.0.
for HostId in {1..254};do
{
    if /bin/ping -c 1 -W 1 $NetId$HostId > /dev/null;then
        echo "$NetId$HostId lived,Ping Test Successed"
    else
        echo "$NetId$HostId not lived,Ping Test Failed"
    fi

} &
done
wait

while循环

#!/bin/bash
NetId=192.168.0.
declare -i HostId=1
while [ $HostId -le 254 ];do
{
        /bin/ping -c 1 -W 1 $NetId$HostId > /dev/null
        if [ $? -eq 0 ];then
                echo "$NetId$HostId lived,Ping Test Successed"
        else
                echo "$NetId$HostId not lived,Ping Test Failed"
    fi
} &
    let HostId++
done
wait

3、每周的工作日1:30,将/etc备份至/backup目录中,保存的文件名称格式 为“etcbak-yyyy-mm-dd-HH.tar.xz”,其中日期是前一天的时间
先创建启动计划

30 13 * * 1-5 /usr/bin/bash /data/shell/backup.sh

再写脚本

BackName=etcbak-`date -d -1day +%F-%H`
tar -Jcvf /backup/${BackName}.tar.xz /etc/  &> /dev/null

在这里插入图片描述

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

10 * * * * /usr/bin/bash /data/shell/disk.sh

编译脚本

#!/bin/bash

WARNING=10
MAIL=root@localhost

df |sed -rn '/^\/dev\/sd/s#^([^[:space:]]+).* ([[:digit:]]+)%.*#\1 \2#p'|while read diskpart use         d;do

   if [ $used -gt $WARNING ];then
        echo $diskpart will be full,used:$used% | mail -s "diskcheck_alert" $MAIL
   fi
done

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值