如何在 cmd 命令中包含变量?



例如,我希望进程"myexe.exe"在任何主机上运行。所以我希望在每台计算机上评估主机名并将其插入到命令中。理想情况下,我希望这一切都在一行中完成。我尝试了以下代码。

mpiexec -n 8 -hosts 1 %hostname% myexe.exe myinputfile.txt

但是我得到了这个错误

... unable to get host address for %hostname% (11001)

因此,它似乎没有正确评估主机名。如何在命令中正确评估主机名?

你可以改用localhost

但是,在 Windows 上(由cmd标记暗示(,您可能应该使用:

mpiexec -n 8 -hosts 1 %COMPUTERNAME% myexe.exe myinputfile.txt

hostname输出设置变量的魔术是:

FOR /F %A IN ('hostname') DO (SET "V=%~A")

在.bat文件脚本中,将 PERCENT 符号字符加倍。

FOR /F %%A IN ('hostname') DO (SET "V=%%~A")

最新更新