Ifconfig

獲取 ip 地址並設置為變數 bash shell 腳本

  • April 29, 2013

我正在嘗試編寫一個 bash 腳本來配置應用程序(無人值守安裝)。我需要做的就是這個。我需要獲取伺服器的 IP 地址並將其設置為變數。我正在編寫這個腳本來簡化它。我注意到的是,當我在 vps 中測試它時,雖然 eth0 不是預設值,但它與 venet0:0 類似。有什麼方法可以將此 ip 設置為一個變數(如果我知道介面名稱,我知道如何做,我正在嘗試這樣做,但不知道很難為每個可能的設備命名計劃)。如果沒有,那麼我將在他們執行腳本時為使用者權限添加 IP 地址提示。

這不是一個重複的問題,因為我要求的是伺服器的 IP 而不僅僅是伺服器的公共 IP。儘管這旨在建構一個公共郵件伺服器,但我也在建構它以在內部伺服器上工作。

‘的’IP地址…伺服器有這麼多,預設管理,應用程序,DB監聽器?

這對你有用嗎?

IP_ADDR=$(getent hosts `hostname` | awk '{print $1}')

如果你只有一個介面:

ip addr show | grep "inet " | grep -v "127.0.0.1/8" | awk '{print $2}'
10.10.1.254/16

引用自:https://serverfault.com/questions/503614