Linux入門(八)
阿新 • • 發佈:2020-08-02
1、顯示統計佔用系統記憶體最多的程序,並排序。
~]# ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head
2、編寫指令碼,使用for和while分別實現192.168.0.0/24網段內,地址是否能夠ping通,若ping通則輸出"success!",若ping不通則輸出"fail!"
for:
~]# cat ping-for.sh #!/bin/bash # trap 'exit 1' 2 for i in {1..254};do IP="192.168.0."$i ping -W 5 -c 2 $IP &> /dev/null if[ $? -eq 0 ];then echo $IP:success! else echo $IP:fail! fi done
while:
~]# cat ping-while.sh #!/bin/bash # i=1 trap 'exit 1' 2 while [ $i -le 254 ];do IP="192.168.0."$i ping -W 5 -c 2 $IP &> /dev/null if [ $? -eq 0 ];then echo $IP:success! else echo $IP:fail! fi let i++ done
3、每週的工作日1:30,將/etc備份至/backup目錄中,儲存的檔名稱格式 為“etcbak-yyyy-mm-dd-HH.tar.xz”,其中日期是前一天的時間
新增定時任務:
30 1 * * 1-5 /usr/bin/tar cJf /backup/etcbak-$(date -d "1 day ago" +"%Y-%m-%d-%H").tar.xz /etc/
4、工作日時間,每10分鐘執行一次磁碟空間檢查,一旦發現任何分割槽利用率高於80%,就傳送郵件報警
建立檢查指令碼:checkdisk.sh
~]# cat checkdisk.sh #!/bin/bash # USE=$(df -P | sed -nr '/^\/dev/ s@^.* ([0-9]+)% .*@\1@p' | sort -nr | head -1) if [ $USE -gt 80 ];then echo"Disk usage is greater than 80%" | mail -s "Disk check" root echo test fi
建立計劃任務
*/10 * * * 1-5 /root/checkdisk.sh