Dos
Allen 2022-09-09 00:38:26 3147 1 0 0 0
Bat,脚本,批处理,IP地址,用bat批处理脚本,获取本机IP地址

bat脚本:获取本机IP地址

三种方法

@echo off
goto start
:: 获取本机IP
:: 将ipconfig的结果传给find,获得ipconfig结果中带ipv4的行
:: for循环对每行都执行:提取IP赋给myip。
:: /f的作用是让for处理字符串中的内容,通常情况下,不带/f的for命令会处理文件名,带/f会处理文件内的内容
:: for命令默认使用空格符、制表符将每行内容分为几个元素,tokens=16是第16个元素即ip值
:: 正常情况下find查询只有一行结果,如果主机安装了虚拟机则会有多个适配器有ip地址。
:: 第一个才是本机IP,故使用goto保证for只执行一次就跳出循环,防止后续myip的值被覆盖

:start
::method-------1-------
for /f "tokens=16" %%i in ('ipconfig ^|find /i "ipv4"') do (
set myip=%%i
goto out1
)
:out1
echo method---1
echo %myip%

::method-------2-------
for /f "delims=: tokens=2" %%i in ('ipconfig ^| find /i "IPv4"') do (
set myip=%%i
goto out2
)
:out2
echo method---2
echo %myip%

::method-------3-------
for /f "tokens=4" %%i in ('route print^|findstr 0.0.0.0.*0.0.0.0') do (
set myip=%%i
goto out3
)
:out3
echo method---3
echo %myip%

结果

结果
method---1
192.168.247.1
method---2
 192.168.247.1
method---3
192.168.0.101

第二个多了一个空格。

第三个不对,是获取最后的网关地址。

end


【版權聲明】
本文爲原創,遵循CC 4.0 BY-SA版權協議!轉載時請附上原文鏈接及本聲明。
原文鏈接:https://tdlib.com/am.php?t=zrzC7h1LtadC
Tag: Bat 脚本 批处理 IP地址
我也要發一個   ·   返回首頁   ·   返回[Dos]   ·   前一個   ·   下一個
評論
Allen#1Allen 2022-09-09 14:05:14(P) 鏈接地址
私密內容,只有主題作者和評論人可查看
頂部     1/1 
歡迎評論
未登錄,
請先 [ 註冊 ] or [ 登錄 ]
(一分鍾即可完成註冊!)
返回首頁     ·   返回[Dos]   ·   返回頂部