2017-05-14 138 views

回答

1

for /f "tokens=2 delims=[]" %%a in ('ping -n 1 -4 ""') do echo %%a | clip 
  • 执行一个ping命令到本地机器(""),发送使用IPv4仅一个分组(-n 1)(-4

  • ping命令的输出被处理在for /f指令内

  • ping输出的第一行包括在方括号内

  • for /f标记化用方括号作为分隔符线的IP地址,并检索所述第二令牌

 
         v  v   (delimiters) 
    Pinging computername [x.x.x.x] with 32 bytes of data 
    1      2  3    (tokens) 
+0

感谢它的工作! –

0

这批处理文件可以做到这一点,如果你想要的话,也可以给你MAC地址!

@echo off 
Title Get IP and MAC Address 
@for /f "delims=[] tokens=2" %%a in ('ping -4 -n 1 %ComputerName% ^| findstr [') do (
    set "MY_IP=%%a" 
) 

@For /f %%a in ('getmac /NH /FO Table') do (
    @For /f %%b in ('echo %%a') do (
     If /I NOT "%%b"=="N/A" (
      Set "MY_MAC=%%b" 
     ) 
    ) 
) 
echo Network IP : %MY_IP% 
echo MAC Address : %MY_MAC% 
pause>nul & exit