一、顯示統計佔用系統內存最多的進程,並排序。
ps aux|grep -v PID|sort -rn -k +4|head
二、編寫腳本,使用for和while分別實現192.168.0.0/24網段內,地址是否可以ping通,若ping通則輸出"success!",若ping不通則輸出"fail!"
1.for循環實現
#!/bin/bashgit
NETID=192.168.0
for HOSTID in {1..254};do
{
ping -c1 -W1 $NETID.$HOSTID &> /dev/null
if [ $? -eq 0 ];then
echo "$NETID.$HOSTID success!"
else
echo "$NETID.$HOSTID fail!"
fi
} &
done
2.while循環實現
#!/bin/bashvim
NETID=192.168.214
declare -i HOSTID=1centos
while [ $HOSTID -lt 255 ];dobash
ping -c1 -W1 $NETID.$HOSTID &> /dev/nullide
if [ $? -eq 0 ];then
echo "$NETID.$HOSTID success!"
else
echo "$NETID.$HOSTID fail!"
ficentos7
let HOSTID++spa
done
三、每週的工做日1:30,將/etc備份至/backup目錄中,保存的文件名稱格式 爲「etcbak-yyyy-mm-dd-HH.tar.xz」,其中日期是前一天的時間code
[root@centos7 ~]# crontab -e
30 1 1-5 /usr/bin/tar -Jcf etcbak-date -d "-1 day" +%Y-%m-%d-%H
.tar.xz /etc &> /dev/nullblog
四、工做日時間,每10分鐘執行一次磁盤空間檢查,一旦發現任何分區利用率高於80%,就發送郵件報警排序
WARNING=10
MAIL=root@localhost
df |sed -rn '/^\/dev\/sd/s#^([^[:space:]]+). ([[:digit:]]+)%.#\1 \2#p'|while read diskpart used;do
if [ $used -gt $WARNING ];then
echo $diskpart will be full,used:$used% | mail -s "diskcheck_alert" $MAIL
fi
done