代码之家  ›  专栏  ›  技术社区  ›  Edward Q. Bridges

如何将主机名存储在.bat文件中的变量中?

  •  56
  • Edward Q. Bridges  · 技术社区  · 16 年前

    /bin/sh 语法转换为广泛兼容的Windows批处理脚本:

    host=`hostname`
    echo ${host}
    

    如何做到这一点,使其在任何Windows Vista、Windows XP和Windows 2000计算机上都能工作?

    澄清一下:然后我想在程序中继续使用存储在变量中的主机名 host 换句话说,程序的更大目标不是简单地回显主机名。

    6 回复  |  直到 5 年前
        1
  •  53
  •   David Webb    16 年前

    嗯,像这样吗?

    set host=%COMPUTERNAME%
    echo %host%
    

    this question 使用运行命令行应用程序的结果设置环境变量:

    @echo off
    hostname.exe > __t.tmp
    set /p host=<__t.tmp
    del __t.tmp
    echo %host%
    

    在任何一种情况下,'host'都是作为环境变量创建的。

        2
  •  54
  •   Community CDub    8 年前

    FOR 命令,因为它节省了创建临时文件的时间。例如:

    FOR /F "usebackq" %i IN (`hostname`) DO SET MYVAR=%i
    

    %

    FOR /F "usebackq" %%i IN (`hostname`) DO SET MYVAR=%%i
    ECHO %MYVAR%
    

    。有关更多详细信息,请键入 HELP FOR 在命令提示下。

        3
  •  10
  •   Peter Mortensen icecrime    14 年前

    我正在使用环境变量 COMPUTERNAME :

    copy "C:\Program Files\Windows Resource Kits\Tools\" %SYSTEMROOT%\system32
    srvcheck \\%COMPUTERNAME% > c:\shares.txt
    echo %COMPUTERNAME%
    
        4
  •  5
  •   sth    15 年前

    set host=%COMPUTERNAME%
    echo %host%
    
        5
  •  1
  •   Peter Mortensen icecrime    14 年前

    只需使用以下行创建一个.bat文件

    hostname
    

    就是这样。Windows也支持hostname命令。

        6
  •  0
  •   Ariful Huq    6 年前
     set host=%COMPUTERNAME%
     echo %host%
    

    这个就够了。不需要额外的大编码循环。

    推荐文章