1. 程式人生 > >SHELL訓練營--day11_shell練習

SHELL訓練營--day11_shell練習

# 第一習題,在/data/logs/disklog目錄下每天儲存磁碟資訊日誌檔案,以日期為檔名.並刪除一年前檔案
#!/sbin/bash
d=`date +%F`
dir=/data/logs/disklog

if [ ! -d $dir ]
then
    mkdir -p $dir
fi

df -h >$dir/$d.logs

find $dir/  -mtime +365 | xargs rm

# 第二習題,統計日誌IP,並排序,列出前10個訪問最高
awk '{print $1}' 1.log| sort |uniq -c| sort  -n |head -10

# 第三習題,統計所有程序戰用的記憶體使用總量
#!bin/bash
sum=0
for n in `ps aux| grep -v "RSS TTY"|awk '{print $6}'`
do
    sun=$[ $sum+$n ]
done

# 第四習題,判斷主機存活
#!/bin/bash

n=`ping -c10 192.168.0.5|grep 'packet'| awk -F '%' '{print $1}'|awk '{print $NF}'`
[email protected]
if [ $n -ge 50 ] then python mail.py $m "機器宕機" “丟包是$n%” fi # 第五習題,批量修改檔案 #/bin/bash find /123 -type -f -name '*.txt' -exec mv {} {}.bak \; find /123 -type -f -name '*.bak' -exec tar -rf 1.tar.gz {} \; for i in `tar -tf 1.tar.gz` do mv $i.bak $i done