2013-02-10 113 views
1

我需要弄清楚如何爲我的批處理文件單獨顯示計算機的IP地址。我不想要它顯示的那個IP Address ................."%IP Address%批處理文件中的IP地址

我需要它來說一些類似的東西。

set time=&time/t 
set computername=%computername% 
set IP=%IP Address% 
echo. 
echo. 
echo. 
%time% %computername% %IP Address% 

所以如果我的時間爲9:13PM我computername是tracckkk1,我的IP地址是14.14.14.14那麼它會說

9:13PM tracckkk1 14.14.14.14

,而不是

21:13:51 tracckkk1 IP Address.. ...............14.14.14.14

由於任何人這是回答這個問題!

+0

對不起,如果這是一個愚蠢的問題,我只想澄清一件事。當你說,*'我不想讓它顯示'IP地址.................'%IP地址%''*,你的意思是你不希望IP地址的格式如此,或者你想要一個不同的IP地址(不是來自該行)?此外,該線應該來自'ipconfig'? – 2013-02-10 03:38:48

+0

我不希望IP地址顯示線我希望它只顯示我的IP地址,所以我相信你的問題的答案是我希望它的格式不同 – cmd 2013-02-10 05:23:06

+0

可能重複的[我如何獲得IP地址到批處理文件變量?](http ://stackoverflow.com/questions/5898763/how-do-i-get-the-ip-address-into-a-batch-file-variable) – UnhandledExcepSean 2013-02-11 00:57:26

回答

3

下面的工作

@echo off 
    setlocal enabledelayedexpansion 
    set /p hostname=Enter hostname: 
    for /f "tokens=3" %%a in ('ping -4 %hostname% ^| find "Pinging"') do (
    set ip=%%a 
    set ip=!ip:[=! 
    set ip=!ip:]=! 
    echo %date% %computername% !ip! 
    ) 
+0

非常感謝你!!!!!!!這完美的作品!!! – cmd 2013-02-12 00:47:28

+0

我會提高你,但即時通訊不在lvl 15。對不起,我做了一次雖然 – cmd 2013-02-12 01:31:45

+0

我剛剛提高你! – cmd 2013-02-12 01:55:05

0

下面將捕獲計算機的IP地址在名爲IP_ADDRESS的環境變量。

注:IP_ADDRESS價值將有一個前導空格)

for /f "usebackq delims=: tokens=2" %%i in (`ipconfig ^| findstr Address`) do (
set IP_ADDRESS=%%i 
) 

下面是For keyword文檔。

更新:此方法可能存在問題。見this question