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