频道
bg

CMD 中设置环境变量后读取

coding九月 10, 20201mins
OP cmd

CMD中默认单行命令设置变量然后读取是无法读取到的,例如

bash

set a=5 & echo %a%

需要启用延迟环境变量扩展并且使用!x!的语法,才能读取到

bash

@echo off
setlocal enabledelayedexpansion
set a=5 & echo !a!
pause

但是setlocal 只在脚本生效的。

运行CMD时,指定/V 参数可以让CMD生效

bash

C:\> cmd /V /C "set EDITOR=vim&& echo !EDITOR!"
vim

参考: https://superuser.com/questions/223104/setting-and-using-variable-within-same-command-line-in-windows-cmd-exe

评论


新的评论

匹配您的Gravatar头像

Joen Yu

@2022 JoenYu, all rights reserved. Made with love.