欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Linux Shell腳本中獲取本機ip地址方法

 更新時間:2020年10月20日 11:37:48   作者:小菠蘿測試筆記  
這篇文章主要介紹了Linux Shell腳本中獲取本機ip地址方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

方法一:ifconfig -a

ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:"

命令解析

  •  ifconfig -a       和window下執(zhí)行此命令一樣道理,返回本機所有ip信息
  •  grep inet                   截取包含ip的行
  •  grep -v 127.0.0.1      去掉本地指向的那行
  •  grep -v inet6             去掉包含inet6的行
  •  awk { print $2}         $2 表示默認以空格分割的第二組 同理 $1表示第一組​
  •  tr -d "addr:               刪除"addr:"這個字符串

多網卡情況

倘若有多個網卡,可能會出現多個不同網段的IP,這個時候如果還是執(zhí)行上述命令就會返回多個IP,如下:

假設某個機器有192.*.*.8和10.*.*.*網段的IP,現在要實現不同網段的IP地址打印不同的輸出,shell腳本如下

 #!/bin/sh
 ip=`ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:"​`
 echo $ip
 if[[ $ip =="10."*]]
 then
 echo "該網段是10.*.*.*網段"
 else
 echo "該網段是192.*.*.*網段"
 fi

方法二:ip addr

 ip addr | awk '/^[0-9]+: / {}; /inet.*global/ {print gensub(/(.*)\/(.*)/, "\\1", "g", $2)}' 

這里涉及awk命令,暫不展開詳講,后面會專門有一篇介紹awk命令的文章哦   

到此這篇關于Linux Shell腳本中獲取本機ip地址方法的文章就介紹到這了,更多相關Shell獲取本機ip內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • shell中的循環(huán)語句、判斷語句實例

    shell中的循環(huán)語句、判斷語句實例

    這篇文章主要介紹了shell中的循環(huán)語句、判斷語句實例,本文對shell的循環(huán)語句、判斷語句做了一個小結,以及在使用中的注意事項,需要的朋友可以參考下
    2014-07-07
  • Linux命令ifconfig報錯command not found的解決方法

    Linux命令ifconfig報錯command not found的解決方法

    最近在安裝Vmware CentOS,輸入ifconfig查看VM的IP地址,提示command not found,發(fā)現沒安裝命令包,此篇文章記錄整個問題解決方法,有和小編遇到一樣的問題的小伙伴可以參考閱讀本文
    2023-08-08
  • nginx日志切割shell腳本

    nginx日志切割shell腳本

    nginx的日志文件沒有rotate功能。如果你不處理,日志文件將變得越來越大,還好我們可以寫一個nginx日志切割腳本來自動切割日志文件
    2014-03-03
  • Linux在shell中自動生成1到100的數組方法(兩種方法)

    Linux在shell中自動生成1到100的數組方法(兩種方法)

    之前自己在寫shell腳本的時候,需要自動創(chuàng)建1-100的文本確不知道該如何去創(chuàng)建。今天小編給大家分享兩種方法,需要的朋友參考下
    2017-02-02
  • Linux命令之網絡命令route詳解

    Linux命令之網絡命令route詳解

    route命令是Linux系統中的一個網絡管理工具,用于顯示和操作IP路由表,它可以用來查看當前系統的路由表信息,添加、刪除或修改路由表項,以及顯示路由表中的詳細信息,本文給大家介紹Linux命令之網絡命令route詳解,感興趣的朋友一起看看吧
    2023-10-10
  • 用expect實現ssh自動登錄服務器并進行批量管理的實現方法

    用expect實現ssh自動登錄服務器并進行批量管理的實現方法

    這篇文章主要介紹用expect實現ssh自動登錄服務器并進行批量管理的實現方法,需要的朋友可以參考下
    2013-02-02
  • shell實現目錄增量備份的示例代碼

    shell實現目錄增量備份的示例代碼

    本文主要介紹了shell實現目錄增量備份的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-08-08
  • Linux命令之systemctl用法詳解

    Linux命令之systemctl用法詳解

    Linux 服務管理兩種方式service和systemctl,systemd是Linux系統最新的初始化系統(init),作用是提高系統的啟動速度,盡可能啟動較少的進程,盡可能更多進程并發(fā)啟動,本文給大家詳細講解了Linux systemctl命令用法,需要的朋友可以參考下
    2024-03-03
  • CPU負載監(jiān)控腳本代碼

    CPU負載監(jiān)控腳本代碼

    CPU負載監(jiān)控腳本代碼,需要的朋友可以參考下
    2013-01-01
  • shell批量創(chuàng)建文件并重新命名的實例代碼

    shell批量創(chuàng)建文件并重新命名的實例代碼

    這篇文章主要給大家介紹了關于shell批量創(chuàng)建文件并重新命名的相關資料,文中還介紹了批量刪除文件以及文件更名的多種方法,每種方法都給出了詳細實例代碼,需要的朋友可以參考下
    2021-07-07

最新評論