hostname 查看计算机名
hostname 一行输出本机的计算机名,是脚本和工单里最常用的「这条结果来自哪台机器」标记。它的输出是 NetBIOS 短名而不是完整域名,改名后也需要重启才会反映出来。批量任务里把 hostname 写进结果文件,汇总输出就天然带上来源机器,省去人工对应环节。
基本信息
| 适用平台 | Windows CMD / PowerShell(命令同名) |
|---|---|
| 语法 | hostname(无参数,只读) |
| 等价变量 | %COMPUTERNAME% |
| 完整名称 | 结合 DNS 后缀查看可得 FQDN |
| 生效时机 | 改名后需要重启才更新 |
典型使用场景
- 脚本执行结果里回写主机名,便于区分来源机器
- 工单与巡检记录中标注「在哪台机器上操作」
- 配合 ping 快速确认目标机器的身份
- 批量脚本按主机名分流,对不同机器执行不同动作
- 改名后核对是否已生效,判断是否需要重启
- 收集资产信息时把主机名与地址一起归档
- 在共享终端或跳板机上确认自己当前操作的是哪台机器
常用示例
常用示例
hostname REM 输出计算机名(NetBIOS 短名)
echo %COMPUTERNAME% REM 环境变量等价写法
hostname > D:\result.txt REM 结果写入文件留档
powershell -c "$env:COMPUTERNAME + '.' + $env:USERDNSDOMAIN" REM 拼出完整域名
REM 改名(需重启生效):Rename-Computer -NewName WEB02 -Restart取值方式对照
| 方式 | 输出 | 说明 |
|---|---|---|
| hostname | 计算机名 | 短名,脚本中最常用 |
| %COMPUTERNAME% | 计算机名 | 环境变量,完全等价 |
| ipconfig /all | 含 DNS 后缀 | 可得到完整名称 |
| $env:USERDNSDOMAIN | 登录域的 DNS 后缀 | 与主机名组合成 FQDN |
用 Rename-Computer 改名后、尚未重启之前,hostname 输出的仍是旧名称,这是系统设计而不是命令失效,重启之后才会更新。批量改名的场景要把重启排进维护窗口,否则中间状态会让人困惑。
hostname 只给 NetBIOS 短名;需要完整限定名称时,用 ipconfig /all 查看连接特定的 DNS 后缀,或者拼接环境变量得到。脚本里把主机名与时间一起输出,出问题回看日志时定位会快很多。