linux 学习笔记(八)

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

ps -aux|sort -k4nr 
内存排序.png

2、编写脚本,使用for和while分别实现192.168.0.0/24网段内,地址是否能够ping通,若ping通则输出"success!",若ping不通则输出"fail!"

for

#!/bin/sh
#Author: zhs
#Date:  2020/02/18
PING="ping -w 2 -c 2"
IP="192.168.233"
    for n in `seq 1 254`
     do
       {
           $PING $IP.$n &> /dev/null
           if [ $? -eq 0 ];then
               echo "$IP.$n is sucess"
           else
           echo "$IP.$n is fail"
            fi
         }&  
      done

while

#!/bin/sh
#Author: zhs
#Date:  2020/02/18
PING="ping -w 2 -c 2"
IP="192.168.233"
i=1
    while [ $i -le 254 ];do
       {
          $PING $IP.$i &> /dev/null #ping ip
           if [ $? -eq 0 ];then
               echo "$IP.$i is sucess"
           
           else
               echo "$IP.$i is fail"
           
           fi
         }&    
           let i++
     done
ping检测.png

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

#vi bak_etc.sh
#!/bin/sh
#Author: zhs
#Date:  2020/02/18
tar -zcvf /backup/etcbak-$(date -d  "1 day ago" +"%F-%H").tar.xz  /etc/ &>/dev/null
#crontab 内添加此条计划任务
30 1  * * 1-5 sh bak_etc.sh

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

#!/bin/sh
#Author: zhs
#Date:  2020/02/18
Diskspace=`df |awk '{print $5}'|sort -nr |head -1`
Diskinode=`df -i |awk '{print $5}' |sort -nr |head -1`

if [ $Diskspace -gt 80 -o $Diskinode -gt 80 ] ;then
 echo " Disk space will not enough space!"|mail -s root@loaclhost
fi

*/10 * * * * /root/Myscripts/diskcheck.sh
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容