如何通過一個命令知道您的公共IP

erjaimer 的博客 是我得到了這個非常有用的提示。

發生了 埃爾賈伊梅爾 它解釋瞭如何在一行中了解我們的公共 IP(真實 IP),同時也邀請任何想要改進該行的人這樣做......好吧......你知道我是 bash 的忠實粉絲,所以我做了一些更改。 這是 我的線:

GET http://www.vermiip.es/  | grep "Tu IP p&uacute;blica es" | cut -d ':' -f2 | cut -d '<' -f1

讓我們看看我的更改得到的結果的屏幕截圖:

他的台詞如下:

GET http://www.vermiip.es/ | grep "Tu IP pública es" | perl -pe 's/(.*:)||\s+//g;'

使用原始行會是什麼樣子:

原始命令的解釋由相同的提供 埃爾賈伊梅爾 en 文章:

  1. 命令 GET 它存在於任何 GNU/Linux 發行版中,正如其名稱所示,它會下載給定 URL 的 HTML。
  2. 下一步是查看 HTML 文檔,了解您在頁面上顯示的 IP。 在第二步中,我們得到這個結果: 您的公網IP是:xx.xx.xxx.xxx,顯然 X 是數字。
  3. 下一步我將使用正則表達式和 PERL 作為控制台命令,過濾字母等。 perl -pe 's/(.*:)|(<\/h2>)|(\s+)//g; ,這個正則表達式做得有點輕,我建議改進它,甚至使用 grep 更好一點,它可以被刪除。

在這裡我留下我的解釋:

  1. 通過 GET 我們下載該 URL 的 HTML,它告訴我們我們的 IP 以及許多我們不需要的其他文本。
  2. 我們將清理所有不需要的代碼,只留下 IP 行 grep的.
  3. 問題是它向我們顯示了帶有小文本和 H2 標籤的 IP,所以現在使用它兩次 我們將清理所有內容,只留下 IP。
  4. (第 1 次剪切)» 我們通過簡單地說不顯示任何內容來清理文本和第 1 個 H2 標籤 : (兩個點)在其左側,僅在末尾留下 H2 標籤。
  5. (第一個剪切)» 我們用另一個剪切清理最後一個 H1 標籤,這不會顯示從第一個 < 到其右側的任何內容。 只留下IP。

你使用的任何方法(命令)都會給你相同的結果,我只是想做出自己的貢獻,因為看到帶有正則表達式和perl的命令行,很難一個字符一個字符地向別人解釋哈哈。

不管怎樣,我希望你喜歡它,並感謝你 埃爾賈伊梅爾 因為寫過 原來的文章。

問候


發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責數據:MiguelÁngelGatón
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。

  1.   魯道夫 他說:

    如果你沒有curl並且有wget(例如我在MacOSX上的情況)這個命令也有效:

    wget -nv -q -O – http://ip.appspot.com/

    (儘管正如 Edwin 所說,ifconfig.me 是正確的選擇......並且我在 MacOSX 上安裝了curl)

  2.   埃德溫 他說:

    更輕鬆
    捲曲ifconfig.me

    1.    KZKG ^ Gaara 他說:

      O_O...我不知道那個網站...WTF!,太棒了!!!
      謝謝朋友提供的信息,超級有趣,呵呵。

      PS:現在我覺得自己像個白痴,當你用兩個詞就能做到這一點時,卻使用了一整串指令哈哈哈

    2.    阿里爾 他說:

      太棒了,只需安裝curl 和該命令,效果就很好!

  3.   聖地亞哥 他說:

    非常好的貢獻! 它也非常有用,因為它不需要安裝任何額外的東西。 我嘗試了 CURL,但它要求我安裝該軟件包。

    問候。

    1.    KZKG ^ Gaara 他說:

      啊,系統默認的CURL不是一樣的嗎? 奧_奧
      好吧,感謝您的良好貢獻,您已盡力而為 回复

      問候和感謝朋友

  4.   萊斯特區 他說:

    臥槽!! (複製粘貼,xD我從來沒有寫過這個暱稱)KZKG^Gaara 的解釋很棒。 埃德溫,好吧,太好了,我不知道那個方法。 感謝分享。

    1.    KZKG ^ Gaara 他說:

      哈哈謝謝朋友🙂

  5.   亞歷杭德羅·莫拉(Alejandro Mora) 他說:

    或搭配:
    捲曲-s http://ip.appspot.com/

  6.   奧伯斯特 他說:

    俗話說,不知道一件事就不會睡覺

  7.   塞爾吉奧 - 他說:

    太好了,我不知道這項服務。

    告訴本文作者,終端仿真器中的背景圖像導致閱讀困難。

  8.   兄弟 他說:

    這很棒。 然而,這樣更容易:
    $curl ifconfig.me

    1.    KZKG ^ Gaara 他說:

      哈哈,是的,他們已經在上面評論過了,我對不得不使用整個指令鏈感到有點難過,呵呵

  9.   B1t藍3 他說:

    謝謝,非常有用

  10.   藻類 他說:

    好提示……(很高興知道)。

  11.   達沃茲盒子 他說:

    其他方法:
    了解我的公共 IP:
    wget -qO- ifconfig.me/ip
    wget -qO- ifconfig.me/host

  12.   雨果 他說:

    好吧,至少在 Debian 上,您可以選擇使用默認的控制台瀏覽器:

    www-browser http://ifconfig.me

    我通常使用 elinks 或 w3m

  13.   正確 他說:

    我愛羅的命令多麼複雜啊!! 我用

    wget -qO- icanhazip.com

  14.   塔里貢 他說:

    哈哈哈,太棒了。

  15.   布拉澤克 他說:

    非常好,我不知道這個方法。 如果沒有學到任何新東西,你永遠不會上床睡覺。

    1.    KZKG ^ Gaara 他說:

      當我看到所有的方法時我也這麼想哈哈

  16.   olo 他說:

    我有一個類似的。 結果是一樣的。
    wget -q -O - checkip.dyndns.org | sed -e 's/.*Current IP Address: //' -e 's/<.*$//'

    如果我們將其放入腳本中並添加它以使用 zenity (pe) 將其顯示在屏幕上,我們就有了一個非常酷的“應用程序”

    它會是這樣的:
    #!/bin/sh

    IPPUBLICA=$(wget -q -O - checkip.dyndns.org | sed -e 's/.*Current IP Address: //' -e 's/<.*$//')

    zenity --info --text="Tu IP es: $IPPUBLICA"

    問候

  17.   喬根納特2 他說:

    在某些發行版中,wget 都沒有默認安裝,因此在這方面,curl 是最合適的。

    1.    KZKG ^ Gaara 他說:

      全部默認安裝了curl嗎?

  18.   沉重的網孔 他說:

    我這樣做,我有一個別名xD:
    別名 myip='wget http://automation.whatismyip.com/n09230945.asp -O – 2> /dev/null; 扔出去'

    但 CURL 卻讓我大吃一驚。

    您好!

  19.   Elwuilmer 他說:

    我相信獲取公網IP的方法有很多種,每個人都可以自由選擇自己最認同的一種,我特別喜歡用:

    wget -qO- ifconfig.me/ip

    我的建議是編輯這篇文章並放置每個現有的替代方案來了解公共IP,並且讀者可以自由選擇要使用的方法。

  20.   馬蒂亞斯 他說:

    轉到“控制面板”,打開後選擇“網絡連接”,右鍵單擊正在運行的連接(這將是有 2 台藍色電腦的連接),然後在打開的新窗口中選擇“屬性”,單擊“互聯網協議”,然後在“屬性”選項上,您可以看到您的 IP 地址

    如果你喜歡我,請回复我,為我投票! https://es.answers.yahoo.com/question/index?qid=20080731112416AAVDKNz

  21.   巴勃羅 他說:

    找到他們在頁面上提供的所有信息對我非常有幫助。 我能夠按照步驟操作並了解我的公共 IP。在另一頁上 http://www.gurugles.com/internet-y-computadoras/cual-es-mi-ip-publica/ 。 我還找到了很多關於IP的答案,對於我們這些不太了解這個主題的人來說非常清楚。

  22.   匿名 他說:

    捲曲是最好的