亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

linux Shell學(xué)習(xí)筆記最后一節(jié),溫故與知新

 更新時(shí)間:2010年12月25日 18:01:06   作者:  
linux Shell學(xué)習(xí)筆記最后一節(jié),這節(jié)是對前面章節(jié)的小結(jié),學(xué)習(xí)shell編程的朋友可以參考下。

腳本編寫技巧

腳本文件名命名規(guī)則

        文件名的字符包括

        字母、數(shù)字、"."、"_"和"-", 注意:腳本的文件名命名不能以數(shù)字開頭。

腳本文件名的命名,盡量使用英文單詞、詞組或短句的縮寫。

腳本版本管理:

        腳本作用.主版本號.修改次數(shù).shell類型

變量命名規(guī)范

        變量名可以由數(shù)字和字母組成

        變量名采用全部英文字符小寫的方式

        變量名稱盡量使用縮寫,最好不要超過6個(gè)字符

        ${變量名} 例:${port},${ipaddr}…

腳本代碼注釋規(guī)范

        腳本代碼注釋可以使用"#"和";(分號)"兩種方式進(jìn)行注釋。#一般由于描述性的注釋,旨在說明代碼的作用或怎么使用。

        而;通常用于示例性的注釋,特別是在一些配置文件中常常會(huì)用到,因此我們沿用這兩種方式來對我們的腳本進(jìn)行注釋。

引用符號使用規(guī)范

        盡量少用單引號

        對極個(gè)特殊字符進(jìn)行屏蔽特殊含義時(shí),使用\(反斜線)進(jìn)行屏蔽

        使用帶引號進(jìn)行屏蔽字符時(shí),單引號內(nèi)一般不適用其他引用符號,除非是打印特殊符號本身。

        使用反引號進(jìn)行執(zhí)行一個(gè)shell命令時(shí),反引號內(nèi)一般加其他引用符號。

腳本函數(shù)定義規(guī)范

        變量名可以由數(shù)字和字母組成

        使用駝峰命名法(從第二個(gè)單詞開始,每個(gè)單詞首字母大寫)

        名字盡量不使用縮寫,除非它是眾所周知的

        名字可以有兩個(gè)或三個(gè)單詞組成,但通常不應(yīng)多于三個(gè)

文本輸出排版

第一天課后作業(yè)

1、grep "20081011" text.txt                            取出這一天的數(shù)據(jù)

2、grep "200804" text.txt                            取出這一個(gè)月的數(shù)據(jù)

3、grep "200806" text.txt | grep -v "-"                    取出一個(gè)月的上漲數(shù)據(jù)

4、grep "200807" text.txt | grep -v "-" | wc -l            列出有幾天是上漲個(gè)數(shù),帶統(tǒng)計(jì)

5、grep "200808" text.txt | sort -k5 -n | tail -1            判斷上漲,然后tail取最后一行

grep "200808" text.txt | sort -k5 -r |head -1            判斷上漲,然后head取第一行

6、grep "200810" text.txt | awk '{if($4>0){print $1,$5}}'    取出一月中上漲數(shù)據(jù)時(shí)間和上漲幅

7、grep "200811" text.txt | awk '{if($4>5 && $4<20){print $0}}'        判斷區(qū)間取出整行

 

腳本代碼實(shí)例分析1

    編寫一個(gè)shell腳本,執(zhí)行腳本后自動(dòng)ping以下地址:

        192.168.1.1,192.168.1.31

    以上IP地址直接寫在腳本之中。執(zhí)行完成后,

應(yīng)顯示能夠ping通的IP地址和不能夠ping通的IP地址

 

 

    #!/bin/bash

    if ping 192.168.1.1 -c 1

then

    echo "192.168.1.1 online"

else

    echo "192.168.1.1 offline"

fi

if ping 192.168.1.31 -c 1

then

    echo "192.168.1.31 online"

else

    echo "192.168.1.31 offline"

fi

 

腳本代碼實(shí)例分析2

修改分析1,但是從iplist.txt中讀取IP

 

#!/bin/bash

for ip in `cat iplist.txt`

do

    if ping $ip -c 1

    then

        echo "${ip} online"

    else

        echo "${ip} offline"

    fi

done

 

腳本代碼實(shí)例分析3

修改分析2,去除無用的信息

 

#!/bin/bash

for ip in `cat iplist.txt`

do

    if ping $ip -c 1 >/dev/null 2>&1

    then

        echo "${ip} online"

    else

        echo "${ip} offline"

    fi

done

 

 

腳本代碼實(shí)例分析4

修改分析3,生成記錄

 

#!/bin/bash

>hoststatus.txt

for ip in `cat iplist.txt`

do

    if ping $ip -c 1 >/dev/null 2>&1

    then

        echo "${ip} online" |tee -a hoststatus.txt

    else

        echo "${ip} offline" |tee -a hoststatus.txt

    fi

done

 

腳本代碼實(shí)例分析5

產(chǎn)生一個(gè)IP地址池,生成255個(gè)IP,并修改分析4,實(shí)現(xiàn)多線程ping

 

#!/bin/bash

>iplist

for ip in `seq 1 255`

do

    echo "192.168.1.${ip}" >>iplist

done

 

#!/bin/bash

>hoststatus.txt

>temp

fastping()

{

    if ping ${1} -c 1 >/dev/null 2>&1

    then

        echo "${ip} online" |tee -a temp

    else

        echo "${ip} offline" |tee -a temp

    fi

}

for ip in `cat iplist.txt`

do

    fastping $ip &

done

wait

sort -t. -k4 -n temp >hoststatus.txt

rm temp

 

temp ./ping.sh            測試一個(gè)腳本執(zhí)行多久

相關(guān)文章

最新評論