使用 cmd 命令中的变量
Using variables from cmd commands
我正在尝试制作一个从基本 CMD 命令中获取变量的批处理程序。
例如:
c:\Users> ipconfig
.....
IPv4 Address ....... 123.456.7.89
.....
假设我想制作一个只在屏幕上打印 IP 地址的批处理程序,例如:
@echo off
echo (IP Address Variable Here)
pause;
我需要做什么?
感谢您的宝贵时间。
我想制作一个只在屏幕上打印 IP 地址的批处理程序
使用以下批处理文件。
GetIPAddress.cmd:
@echo off
setlocal enabledelayedexpansion
rem throw away everything except the IPv4 address line
for /f "usebackq tokens=*" %%a in (`ipconfig ^| findstr /i "ipv4"`) do (
rem we have for example "IPv4 Address. . . . . . . . . . . : 192.168.42.78"
rem split on : and get 2nd token
for /f delims^=^:^ tokens^=2 %%b in ('echo %%a') do (
rem we have " 192.168.42.78"
set _ip=%%b
rem strip leading space
set _ip=!_ip:~1!
)
)
echo %_ip%
endlocal
备注:
- 你要的值保存在
_ip
示例用法和输出:
F:\test>ipconfig | findstr /i "ipv4"
IPv4 Address. . . . . . . . . . . : 192.168.42.78
F:\test>GetIPAddress
192.168.42.78
进一步阅读
- An A-Z Index of the Windows CMD command line - 所有与 Windows cmd 行相关的内容的绝佳参考。
- enabledelayedexpansion - 延迟扩展将导致变量在执行时而不是在解析时扩展。
- for /f - 根据另一个命令的结果循环命令。
- ipconfig - 配置IP(网际协议配置)
- set - 显示、设置或删除 CMD 环境变量。使用 SET 所做的更改将仅在当前 CMD 会话期间保留。
- setlocal - 设置选项以控制批处理文件中环境变量的可见性。
- variables - 提取部分变量(子字符串)。
我正在尝试制作一个从基本 CMD 命令中获取变量的批处理程序。 例如:
c:\Users> ipconfig
.....
IPv4 Address ....... 123.456.7.89
.....
假设我想制作一个只在屏幕上打印 IP 地址的批处理程序,例如:
@echo off
echo (IP Address Variable Here)
pause;
我需要做什么?
感谢您的宝贵时间。
我想制作一个只在屏幕上打印 IP 地址的批处理程序
使用以下批处理文件。
GetIPAddress.cmd:
@echo off
setlocal enabledelayedexpansion
rem throw away everything except the IPv4 address line
for /f "usebackq tokens=*" %%a in (`ipconfig ^| findstr /i "ipv4"`) do (
rem we have for example "IPv4 Address. . . . . . . . . . . : 192.168.42.78"
rem split on : and get 2nd token
for /f delims^=^:^ tokens^=2 %%b in ('echo %%a') do (
rem we have " 192.168.42.78"
set _ip=%%b
rem strip leading space
set _ip=!_ip:~1!
)
)
echo %_ip%
endlocal
备注:
- 你要的值保存在
_ip
示例用法和输出:
F:\test>ipconfig | findstr /i "ipv4"
IPv4 Address. . . . . . . . . . . : 192.168.42.78
F:\test>GetIPAddress
192.168.42.78
进一步阅读
- An A-Z Index of the Windows CMD command line - 所有与 Windows cmd 行相关的内容的绝佳参考。
- enabledelayedexpansion - 延迟扩展将导致变量在执行时而不是在解析时扩展。
- for /f - 根据另一个命令的结果循环命令。
- ipconfig - 配置IP(网际协议配置)
- set - 显示、设置或删除 CMD 环境变量。使用 SET 所做的更改将仅在当前 CMD 会话期间保留。
- setlocal - 设置选项以控制批处理文件中环境变量的可见性。
- variables - 提取部分变量(子字符串)。