在windows命令行中运行多个命令
如何从windows命令行一次运行多个命令? 在*nix环境中,我可以执行以下操作:在windows命令行中运行多个命令,windows,batch-file,cmd,Windows,Batch File,Cmd,如何从windows命令行一次运行多个命令? 在*nix环境中,我可以执行以下操作: export VAR=foo; echo $VAR 我能找到的最接近的方法是: set VAR=foo & echo %VAR% 但是,当我“回显”时,未设置VAR。我需要在同一进程下执行所有命令cmd/c call set VAR=foo&echo%VAR%-此操作正常,即使用“call set”调用set 。您可以在每个命令之前设置调用。将它们放入.bat/.cmd文件中。这将在单个cmd.ex
export VAR=foo; echo $VAR
我能找到的最接近的方法是:
set VAR=foo & echo %VAR%
但是,当我“回显”时,未设置VAR。我需要在同一进程下执行所有命令
cmd/c call set VAR=foo&echo%VAR%
-此操作正常,即使用“call set”调用set
。您可以在每个命令之前设置调用。将它们放入.bat/.cmd文件中。这将在单个cmd.exe实例中运行。我不能这样做。我正在远程运行这些命令(它们是生成的),我必须像这样运行它们:$cmd/c命令在将来,提前提到这类细节会很有帮助。批处理文件不是他们想要的。您知道命令序列在一个环境中有效,但在另一个环境中无效,因此您非常了解环境之间的差异。你没有要求安装Linux,但你要求询问的人警告他们Linux是不可接受的。事实上,在
echo
之前放置call
就足够了,而且cmd
也不需要。我不知道为什么,但这对我不起作用。echo的结果总是“%VAR%”。我需要Andriy M:“cmd/c”,因为这是一个远程调用,所以我必须将这些命令作为参数放入cmd.exe。如果在括号中设置/c swithc之后的表达式会怎么样?->CMD/c“call set var=foo&call CMD/c call echo%var%”
谢谢。整个技巧是在内部cmd进程中调用echo。所以,如果我这样说:CMD/csetvar=foo&CMD/ccecho%VAR%,那么它工作得很好。