0

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

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

但我得到了这个错误

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

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

4

1 回答 1

0

你可以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 SIGN 字符加倍。

FOR /F %%A IN ('hostname') DO (SET "V=%%~A")
于 2020-01-22T20:19:40.667 回答