我有一个带有一个输入参数%1
的batch.bat。我想以:batch.bat PATH
启动脚本。我希望这能用echo
显示PATH环境变量。
我试过了:
@echo %1
E:\>batch.bat PATH
PATH
但我想拥有PATH环境变量的内容。
E:\>batch.bat PATH
C:\Windows;
答案 0 :(得分:3)
您需要延迟扩展才能输出cmd行参数引用的变量 此批次使用两种不同的方法,
%%
到一次,其他变量已经扩展)!
代替普通单一百分号,使用先前的命令setlocal enabledelayedexpansion
:: Q:\Test\2018\05\10\SO_50280684.cmd
@Echo off&SetLocal EnableDelayedExpansion
Echo(%1
Echo(!%1!
Call Echo(%%%1%%
我使用命令分隔符(
代替空格来抑制空变量的Echo is off
消息。
带命令的示例
>SO_50280684.cmd PROCESSOR_ARCHITECTURE
PROCESSOR_ARCHITECTURE
AMD64
AMD64