定时任务&&循环简单脚本

1、显示统计占用系统内存最多的进程,并排序。
ps axo pid,pmem,comm  | grep -v PID | tr -s " "  | sort -t " " -k3n

2、编写脚本,使用for和while分别实现192.168.0.0/24网段内,地址是否能够ping通,若ping通则输出"success!",若ping不通则输出"fail!"
for循环:
NET="10.51.3"
RED="\033[1;31m"
END="\033[0m"
GREEN="\033[1;32m"
for i in `seq 1 254`;do
    ping -c 1 -W 1 $NET.$i &>/dev/null && echo -e "${GREEN}$NET.$i is sucess${END}" || echo -e "${RED}$NET.$i is fail${END}"
done

while循环
I=1
NET="10.51.3"
HOST=254
RED="\033[1;31m"
GREEN="\033[1;32m"
END="\033[0m"
while [ $I -le $HOST ];do
    ping -c 1 -W 1 $NET.$I &>/dev/null && echo -e "${GREEN}$NET.$I is sucess${END}" || echo -e "${RED}$NET.$I is fail${END}"
    let I++
done

3、每周的工作日1:30,将/etc备份至/backup目录中,保存的文件名称格式 为“etcbak-yyyy-mm-dd-HH.tar.xz”,其中日期是前一天的时间
创建脚本backup_etc.sh
#!/bin/bash
[ -d /baskup ] || mkdir /backup
tar cJf /backup/etcbak-$(date -d yesterday "+%F-%H").tar.xz /etc
创建定时任务
crontab -e
30 1 * * 1-5 /opt/backup_etc.sh &>/dev/null 

4、工作日时间,每10分钟执行一次磁盘空间检查,一旦发现任何分区利用率高 于80%,就发送邮件报警
创建脚本
#!/bin/bash
WARNING=80
BIGGEST=$(df -h | sed -nr '/^\/dev/s#.* ([0-9]+)%.*#\1#p'| sort -r | head -1)
[ $BIGGEST -ge $WARNING ] && echo 'disk is almost full' | mail -s "disk is almost full" root
创建定时任务
crontab -e
*/10 * * * 1-5 /opt/checkdish.sh &>/dev/null
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值