You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何带参数执行VMware vSphere获取虚拟机名称的Python脚本?

正确执行pyvmomi虚拟机名称获取脚本的方法

你遇到的错误是因为没提供脚本要求的必填参数,从报错信息里就能看出来,-u/--user是必须填写的,另外脚本还要求-s/--host(你之前用的--host其实对应脚本里的-s参数,看usage提示就能明白)。

我给你整理下完整的执行步骤和命令:

1. 明确必填参数

脚本运行时必须提供两个核心参数:

  • -s:你的vSphere(ESXi或vCenter)的IP地址或域名
  • -u:vSphere的登录用户名(比如administrator@vsphere.local这类格式)

密码参数-p虽标记为可选,但如果不填,脚本通常会交互式提示你输入,当然也可以直接在命令行指定。

2. 完整命令示例

替换成你的实际信息就能直接用:

python3 test2.py -s 你的vSphere主机IP -u 你的登录用户名 -p 你的登录密码

举个实际场景的例子:

python3 test2.py -s 192.168.1.100 -u administrator@vsphere.local -p MySecurePass123!

3. 可选参数说明

如果有特殊需求,还可以加上这些可选参数:

  • -o PORT:如果vSphere用了非默认端口(默认是443),比如-o 8443
  • -S:启用SSL证书验证(脚本默认用SmartConnectNoSSL跳过验证,适合测试环境;生产环境建议开启这个参数保证安全)

4. 无明文密码的执行方式

不想在命令行暴露密码的话,去掉-p参数即可,脚本会自动提示你输入密码:

python3 test2.py -s 192.168.1.100 -u administrator@vsphere.local

运行后会看到类似Enter password:的提示,输入密码回车就好。

这样执行后,脚本就能通过SmartConnectNoSSL成功连接到vSphere,遍历并输出所有虚拟机的名称啦。

内容的提问来源于stack exchange,提问作者Erica

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.09 15:17:51