Windows CLI 中是否有类似命令替换的东西?

Cri*_*scu 18 windows command-line

在 Linux (Bash) 中,有一种方法可以使用一个命令作为另一个命令的参数,使用反引号:

> echo ===== `time` =====
Run Code Online (Sandbox Code Playgroud)

这将打印:

===== 当前时间为:12:22:34.68 =====

有没有办法在 Windows 上的 cmd.exe 中做到这一点?

Kur*_*fle 9

尝试这个:

echo. ===== %time% =====
Run Code Online (Sandbox Code Playgroud)

我知道这可能不是你想要的,因为你提到了命令替换......所以这可能是这样的:

for /f "usebackq tokens=*" %i in (`date/t&time/t`) do echo.  ===== %i =====
Run Code Online (Sandbox Code Playgroud)

有关usebackqtry 这个命令的用法的更多提示:

for /?
Run Code Online (Sandbox Code Playgroud)

  • 是的,`for /f` 正是我要找的。谢谢!附带说明:它是如此笨拙且难以记住(与 bash 方式相比)。我应该放弃“蝙蝠编程”并学习一些更有效率的东西——也许是 PowerShell? (4认同)