Windows7(+) 有 env 或同等版本吗?(应用程序单次运行的环境变量)

Windows7(+) 有 env 或同等版本吗?(应用程序单次运行的环境变量)

我正在寻找机会启动具有特定环境变量的应用程序(例如编译器)。我想要与envLinux 相同的功能。 env var=value application.exe

我发现在 Windows cmd.exe 中仅为一个命令设置环境变量但对这个决定并不满意。(因为写作中有很多特点,你可能会犯错误)

自 2010 年以来有什么变化吗?即使没有内置解决方案,我也会很高兴。

答案1

env var=value application.exe

是可能的。编写以下批处理脚本,命名它env.bat并将其放置在目录中的某个位置PATH 变量。 请阅读命令行参数(参数)设置本地文章以作进一步解释。

环境脚本脚本:

@setlocal
@set "%~1=%~2"
@%3

上述脚本适用于给定的简单命令,但需要稍微复杂一点才能接受诸如env var=value application.exe action input output等的行参数。


编辑前

set var=value&application.exe&set var=

即设置变量然后运行安慰应用程序,然后删除变量。

另一种方法:

cmd /C "set var=value&application.exe"

即启动 Windows 命令解释器的新实例并在其中设置变量然后运行安慰应用程序;有关/Cswitch 含义,请参阅cmd /?

/C      Carries out the command specified by string and then terminates

这里&& 符号必须是逃脱指定的命令. 你可以选择任意一个:

cmd /C "set var=value&application.exe"

或者

cmd /C set var=value^&application.exe

还要注意适当的间距:

                       ↓ allowed space                    
cmd /C "set var=value & application.exe"
                     ↑  this is harmful space as "%var%" would be "value " then
                                                    note trailing space ↑

相关内容