2014-03-25 39 views
0

我最近開始使用UNIX系統。我爲我的RaspPI和我創建了一個小項目。比較IP或通用IP與CIDR通知Linux

我被困在一個地步,我沒有找到谷歌的幫助等等。我的問題是:

是否有可能添加的IP地址與CIDR通知變量?我終於在變量中獲得了IP地址,但無法獲得CIDR通知。我的計劃是創建一個腳本,在那裏我比較我的當前網絡掩碼和網絡掩碼列表。就像這樣:

NETMASK=/sbin/ifconfig eth0 | grep Mask |切-d「:」 -F4 CIDR= 0 if [[ $NETMASK -eq '255.255.255.0' ]] then CIDR=24 elif [[ $NETMASK -eq '255.255.255.128' ]] then CIDR=25 fi 這個文件的輸出說:「所有整數表達式估計」(德國翻譯成英文」

是否ANY1知道我怎麼也比較子網掩碼或知道的另一種方式。得到CIDR notfication,根據實際網絡掩碼?(網絡掩碼應該是多變)

謝謝你的任何進一步的幫助!

乾杯

Maesi

回答

0

讓IP和awk做的工作:

CIDR=`/sbin/ip address show eth0|awk '/inet/{split($2, a, "/"); print a[2]}'` 
0

哇!謝謝......這是一個非常舒適的解決方案。而不是32 IF比較,我可以使用你的命令!

@BTW

尋求的解決方案後,我終於找到了它的中頻比較。

爲了比較IP,我必須使用「=」作爲運算符而不是「-eq」。

當量(整數) =(字符串)

謝謝你的好意!我會用你的命令,而不是我的簡單。

Cheers Maesi