運用Shell 命令列取得本機IP位址
運用Shell 命令列取得本機IP位址
在mac 下方輸入ifconfig
或在linux
下輸入ip a
就可以得到我們的網路卡資訊。不過通常情況下,我們需要查看的是我們的IP位址,不需要這麼多的資訊。所以,我想把這些資訊給摘取出。
mac ifconfig 下面的實作
我們輸入ifconfig
會得到大段的訊息,我們可以看到我們想要的IP位址前面的字串是inet
所以,我們優化一下程式碼如下:
ifconfig | grep inet
得到以下資訊:
inet 127.0.0.1 netmask 0xff000000 inet6 ::1 prefixlen 128 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1 inet6 fe80::85e:9798:4041:1717%en0 prefixlen 64 secured scopeid 0x4 inet 192.168.12.139 netmask 0xffffff00 broadcast 192.168.12.255 inet6 fd86:415c:c5f9::c72:1c02:f044:65de prefixlen 64 autoconf secured inet6 fd86:415c:c5f9::cd76:7bb1:f77d:46f0 prefixlen 64 deprecated autoconf temporary inet6 fd86:415c:c5f9::508d:685b:6a66:b3ce prefixlen 64 autoconf temporary inet6 fe80::9446:a1ff:fe5e:9b8f%awdl0 prefixlen 64 scopeid 0x9 inet6 fe80::9d71:6fa:3da5:9cb6%utun0 prefixlen 64 scopeid 0xa
好,已經精簡很多了。
我們再排除掉inet6
和127
的訊息,就可以得到我們的本地IP了
ifconfig | grep inet | grep -v inet6 | grep -v 127
得到
inet 192.168.12.139 netmask 0xffffff00 broadcast 192.168.12.255
最前面是一個製表符,我們不管,我們用空格分割,並取第二個字段,就可以得到我們的IP信息了
ifconfig | grep inet | grep -v inet6 | grep -v 127 | cut -d ' ' -f2
就順利的得到另外我們想要的本機IP位址。
我們在~/.bin/
下面創建一個getip
的文件,並用chmod +x ~/.bin/getip
賦予執行權限。然後在命令列輸入 getip
就可以得到我們的本機IP了。
需要先把
~/.bin/
配置為環境變量,請參考將這個指令當作一個系統指令,可以隨時執行
在linux centos 7 下面實作取得本機IP的腳本
linux
不使用ifconfig
指令來取得信息,而是使用ip a
來獲取。
所以我們把上面的指令修改一下,改成
ip a | grep inet | grep -v inet6 | grep -v 127 | sed 's/^[ \t]*//g' | cut -d ' ' -f2
由於linux 中得到的資訊的最前面不是製表符而是空格,所以加上了sed ' s/^[ \t]*//g'
來清除開頭的空格。
其他的邏輯是一樣的。如果喜歡的話,也可以搞成全局的,邏輯基本上和mac是一致的。
以上是運用Shell 命令列取得本機IP位址的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)
![探險家.exe 在系統啟動時不啟動 [修復]](https://img.php.cn/upload/article/000/887/227/168575230155539.png?x-oss-process=image/resize,m_fill,h_207,w_330)
如今,許多Windows用戶開始遇到嚴重的Windows系統問題。問題是系統載入後Explorer.exe無法啟動,使用者無法開啟檔案或資料夾。雖然,Windows使用者在某些情況下可以使用命令提示字元手動開啟Windows資源管理器,並且每次系統重新啟動或系統啟動後都必須這樣做。這可能是有問題的,並且是由於下面提到的以下因素造成的。損壞的系統檔案。啟用快速啟動設定。過時或有問題的顯示驅動程式。對系統中的某些服務進行了更改。修改後的註冊表文件。請記住以上所有因素,我們提出了一些肯定會對用戶有所幫助

Linux系統下在處理檔案時,有時候需要刪除檔案末端的行。這種操作在實際應用中很常見,可以透過一些簡單的命令來實現。本文將介紹在Linux系統中快速刪除檔案結尾行的操作步驟,同時提供具體的程式碼範例。步驟一:檢視文件末尾行在進行刪除操作之前,首先需要確認文件的末尾行是哪一行。可以使用tail指令來查看文件的結尾行,具體指令如下:tail-n1filena

很多使用win10系統的小夥伴在玩遊戲或裝系統的時候有遇見過這個問題,應用程式無法啟動,因為應用程式的並行配置不正確。有關詳細信息,請參閱應用程式事件日誌,或使用命令列sxstrace.exe工具。這可能是作業系統沒有對應權限的緣故,具體的教學下面一起來看看吧。使用命令列sxstrace.exe工具的教學1、該問題通常會在安裝程式、遊戲的時候出錯,其提示為:應用程式無法啟動,因為應用程式的並行配置不正確。有關詳細信息,請參閱應用程式事件日誌,或使用命令列sxstrace.exe工具。 2、開始→

本文詳細介紹了將Ubuntu20.04升級到22.04的步驟。對於使用Ubuntu20.04的用戶,錯過了22.04版本帶來的新功能和優勢。為了獲得更好的體驗和安全性,建議及時升級到較新的Ubuntu版本。 Ubuntu22.04的代號為“傑米水母”,讓我們一起來探索如何取得最新的LTS版本吧!如何透過命令列將Ubuntu20.04升級到22.04掌握命令列會為你帶來優勢。雖然透過GUI更新Ubuntu是可能的,但我們的重點將是透過命令列。首先,讓我們使用以下命令檢查目前運行的Ubuntu版本:$

在Python中,可以透過命令列傳遞參數給腳本。這些參數可以在腳本內部使用,以便根據不同的輸入執行不同的操作。 Python命令列參數的詳解:1、位置參數:在命令列中依照順序傳遞給腳本的參數,它們可以在腳本內部透過位置來存取;2、命令列選項:以-或--開頭的參數,通常用於指定腳本的特定選項或標誌;3、傳遞參數值:透過命令列傳遞參數值。

隨著Linux作業系統的廣泛應用,越來越多的人開始需要學習和了解Linux系統中的基本命令和捷徑。在本文中,我們將介紹一些常用的Linux指令和快捷方式,幫助初學者了解Linux系統,提高工作效率。常用指令1.1ls指令ls指令是Linux中最常用的指令之一。它主要用於列出目前目錄下的檔案和子目錄。常用的選項有:-l:以長格式顯示文件訊息,包括文件類型

Django專案開啟之旅:從命令列開始,創建你的第一個Django專案Django是一個強大且靈活的網路應用框架,它以Python為基礎,提供了許多開發Web應用所需的工具和功能。本文將帶領你從命令列開始,創建你的第一個Django專案。在開始之前,請確保你已經安裝了Python和Django。步驟一:建立專案目錄首先,開啟命令列窗口,並建立新的目錄

javac不是內部或外部命令也不是可運行的程式的解決方法: 1、首先官網下載JDK的最新版本並安裝;2、進行系統環境變數配置,在path中添加jdk安裝的路徑;3、進入電腦命令行介面,輸入「java -v」出現版本號碼即可。
