shell 學習三

腳本輸出日誌技巧

編寫腳本,不間斷運行,以10次/s的頻率打印如下格式的日誌:
192.168.1.1 [03/Dec/2009:14:05:37 +0800] "1231231228397"

日誌各個域的說明:
本機IP地址   當前時間   大於10,000,000的隨機數

時間要求: 1個工作時

 

vi shell3.sh

#!/bin/bash
##
## 第三個習題 第一問題 最後修改於2011 4.16 10:40
###本機ip地址 以及當前時間信息
IP_ADRESS=`/sbin/ifconfig eth1 |grep "inet addr:" |awk '{print $2}'|cut -c 6-`
DATA=`date +%m"/"%h"/"%Y":"%H":"%M":"%S" "%z`

### 求出當前時間的unix類型時間戳
DATE=`date +%s`

###設定時間範圍 工作時間爲一小時後面加3600秒
let STOP_DATE=${DATE}+3
####let STOP_DATE=${DATE}+3600
while [ ${DATE} -le ${STOP_DATE} ]
do
        count=1
        while [ ${count} -le 10 ]
        do
                NUM=$RANDOM$RANDOM
                ### 利用RANDOM函數 求出大於8位的隨機數值
                echo "${IP_ADRESS} [${DATA}] \"$NUM\"" >> 3.1.LOG
                ((count++))
        done
        sleep 1
        DATE=`date +%s`
done

 

主要學習了,shell循環類似併發形式控制10s打印一次log。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章