2014-09-27 103 views
0

「ipconfig」返回所有詳細信息。但我只想要ipv4。用於在Windows中單獨獲取IPv4地址的CMD命令

我已經試過 「IPCONFIG |找到/我的 」IPv4「 |夾」 很好,但它返回 「IPv4地址:XXX.XXX.XX。。。。。。。。。」

我不要「IPv4地址......」:「。

我希望輸出 「xxx.xxx.x.x」 沒有別的

是否有任何CMD命令的Windows

回答

0

可以嘗試

for /f "tokens=2 delims=[]" %a in ('ping -n 1 -4 "%computername%"') do @echo %a 

for /f用於爲每個從所獲得的線的執行一些代碼(do子句後的代碼):在磁盤上或將文件或一個命令的輸出直接包括字符串。

在這種情況下,使用第二個選項。 A for /f將用於針對計算機名稱運行ping命令並處理其輸出。在這個ping命令的輸出內部,會有一行像Pinging [xxx.xxx.xxx.xxx] with ....這樣的行。這是我們要用for命令處理的行。通常需要使用某種find命令來丟棄其餘的行,並只保留neede行,但在這種情況下,它不會被需要。

delims子句表示[]將用作分隔符來分割行。我們需要該行的第二部分,因此使用tokens=2

for /f處理ping命令的輸出時,每行都被解析。唯一包含[]的行是我們所感興趣的行,因此,它是唯一將被分割的行,並且是唯一一個返回第二個標記的行(其餘行只會輸出一個標記,因爲它們沒有分割)。該令牌將存儲在for可替換參數%%a中,然後回送到控制檯。

+0

非常感謝... !!!工作完美... !!! 請問您能否簡化這段代碼的功能? – Arun 2014-09-27 11:35:13

+0

@阿倫,答案已更新。解釋它如何工作需要更多的話,而不是使其工作。 – 2014-09-27 12:36:32

+0

謝謝你...... !!!! – Arun 2014-09-30 04:00:22