Batch file 如何提取PC的IP(仅限Wifi适配器)并通过批处理文件将其设置为变量?
我现在有一行简单的代码,以便在控制台中编写IPBatch file 如何提取PC的IP(仅限Wifi适配器)并通过批处理文件将其设置为变量?,batch-file,batch-processing,Batch File,Batch Processing,我现在有一行简单的代码,以便在控制台中编写IP for /f "tokens=14 skip=34 delims= " %%a in ('ipconfig') do (echo %%a) 然而,当我尝试将此信息输入到文件中时,它只会显示命令中显示的最后一个字符,即“:”,但我需要仅将第一行提取到文本文件%temp%\Test.txt,因此我稍后通过 set /p IP=< %temp%\Test.txt set/p IP=
for /f "tokens=14 skip=34 delims= " %%a in ('ipconfig') do (echo %%a)
然而,当我尝试将此信息输入到文件中时,它只会显示命令中显示的最后一个字符,即“:”,但我需要仅将第一行提取到文本文件%temp%\Test.txt
,因此我稍后通过
set /p IP=< %temp%\Test.txt
set/p IP=<%temp%\Test.txt
尝试使用Type,但不起作用,我目前被代码阻止,有什么想法吗?解决方案不是我的,而是一位名为
Fabio Iotti
的博主。他真了不起
for /f "delims=[] tokens=2" %%a in ('ping -4 -n 1 %ComputerName% ^| findstr [') do set NetworkIP=%%a
echo Your IPv4 is: %NetworkIP%
我喜欢这个解决方案,除了它是一个获得它的聪明方法之外,它将输出一个干净的IP变量,所以您不必担心剪断字符串
我们来看看
当运行ping
时,它将显示括号之间的IP。
使用%ComputerName%
ping您自己的计算机将强制命令显示您自己的IP
最后,通过使用通配符,findstr
允许的广泛选项允许我们收集括号之间的信息(记住[')
?),从而生成一个只显示IP的干净变量
但是,如果您通过WiFi/LAN/USB/Cellular或任何其他互联网功能连接,我不确定这将如何工作;Windows如何使用几种连接方法处理IPv4?我确信这不会是一个问题,但我想检查一下。可能重复的