【问题标题】:How to assign command value to variable in batch如何将命令值批量分配给变量
【发布时间】:2017-08-12 16:31:50
【问题描述】:

我想执行一个命令并将它的值分配给批处理文件中的一个变量。

我们知道在 windows 命令提示符下运行 hostname 命令会给出 PC 名称。我想使用主机名命令并将其值分配给批处理文件中的变量。

在谷歌上搜索后,我尝试使用以下方法,这些方法似乎都不起作用:

set CONTROLLER=hostname
set CONTROLLER=%hostname%
set CONTROLLER=%%hostname%%
set CONTROLLER=!hostname!

请多多指教。

【问题讨论】:

    标签: windows batch-file


    【解决方案1】:

    尝试使用

    @echo off
    for /f "delims=" %%a in ('hostname') do @set HOST=%%a
    echo %HOST%
    PAUSE
    

    其中 HOST 是您的变量,您也可以使用您喜欢的任何其他命令来代替“主机名”。

    【讨论】:

    • 我确实遇到了这个,正在寻找一种不太复杂的方法来做到这一点。也请参阅 Rajesh 的回答,我意识到这仅适用于 1 个特定命令,但嘿,这就是我现在需要的。还是谢谢
    【解决方案2】:

    我们可以通过以下命令轻松获取主机名/计算机名

    set host=%COMPUTERNAME%
    echo %host%
    

    【讨论】:

      猜你喜欢
      • 2021-02-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-11
      • 2011-01-28
      • 2011-01-23
      • 1970-01-01
      • 2012-02-23
      相关资源
      最近更新 更多