我需要使用 MS 批处理文件将程序的输出分配给变量。
所以在 GNU Bash shell 中我会使用VAR=$(application arg0 arg1)
。我需要在 Windows 中使用批处理文件实现类似的行为。
就像是set VAR=application arg0 arg1
.
类似的问题
- 如何将命令输出设置为批处理文件中的变量
- 如何在 Windows 中的变量中获取命令的结果?
- 使用 Windows 批处理文件中命令的结果设置变量的值
- 将命令的输出设置为变量(使用管道)
- 将命令输出分配给批处理文件中的变量
一种方法是:
application arg0 arg1 > temp.txt
set /p VAR=<temp.txt
另一个是:
for /f %%i in ('application arg0 arg1') do set VAR=%%i
请注意,第一个%
in %%i
用于逃避%
在它之后,并且在批处理文件中而不是在命令行中使用上述代码时需要。想象一下,你的test.bat
有类似的东西:
for /f %%i in ('c:\cygwin64\bin\date.exe +"%%Y%%m%%d%%H%%M%%S"') do set datetime=%%i
echo %datetime%
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)