N43-第八周作业


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

ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu|head

在这里插入图片描述

 
 
 

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 ping -c1 -W1 $NETID$HOSTID &>/dev/null ;then
				echo "$NETID$HOSTID is success!"
    else
        echo "$NETID$HOSTID is fail!"
    fi
} &
done
wait
while循环:
#!/bin/bash
NETID=192.168.0.
while ((i<=255))
do
		if ping -c1 -W1 $NETID$i &>/dev/null ;then
		    echo "$NETID$i is success!"
    else
        echo "$NETID$i is fail!"
    fi
		let i++
done
wait

 
 
 

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

#创建脚本
#!/bin/bash
vim /data/scriptstest/etcbak.sh
NAME=etcbak-`date +%F-%H -d yesterday`
tar jcvf /backup/$NAME.tar.xz /etc/


#创建计划任务crontab -e
30 1 * * * /data/scriptstest/etcbak.sh &>/dev/null

 
 
 

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

#创建脚本
vim /data/scriptstest/diskcheck.sh
#!/bin/bash
USE=`df | sed -nr '/^\/dev\/sd/s@.* ([0-9]+)% .*@\1@ p'|sort -nr|head -1`
if [ $USE -gt 80 ];then
				mail root << eof
disk warning
eof                                                                                       
fi

#创建计划任务crontab -e
10 * * * 1-5 /data/scriptstest/diskcheck.sh &>/dev/null

猜你喜欢

转载自blog.csdn.net/qq_42669579/article/details/113757451