vmware - 在不成功的 govc pool.info 命令上返回非零值
问题描述
我使用 govc 在 VMware 中创建资源。在创建新资源池之前,我想验证是否存在同名的资源池。在现有池上运行 govc pool.info 会返回有关现有池的信息,并且命令以 0 值退出。
在不存在的资源池上执行相同的命令不会返回任何内容,但也会以 0 值退出。
➜ govc pool.info existing-pool
Name: existing-pool
Path: /TEST/host/server/Resources/existing-pool
CPU Usage: 0MHz (0.0%)
CPU Shares: normal
CPU Reservation: 0MHz (expandable=true)
CPU Limit: -1MHz
Mem Usage: 0MB (0.0%)
Mem Shares: normal
Mem Reservation: 0MB (expandable=true)
Mem Limit: -1MB
➜ echo $?
0
➜ govc pool.info test
➜ echo $?
0
您如何验证现有资源池?
解决方案
由于如果不存在池,pool.info 不会处理退出状态,因此我会处理错误pool.create
。
➜ govc pool.create test
govc: ServerFaultCode: The name 'test' already exists.
➜ echo $?
1
当退出代码!= 0 时,处理错误并提醒用户。
推荐阅读
- python-3.x - mkvirtualenv virt 命令认为 virt 目录已经存在
- python - 有没有可能制作一个可以同时滚动和瞄准的游戏?
- excel - 有没有更好的方法在 Excel 中每次迭代将数据存储在后续单元格中?
- usb - 未绑定的 USB 设备在 linux 上自动绑定
- azure - 使用 Powershell 发布到 WebApp 虚拟目录
- c# - 无法侦听前缀“http://IPAddress:Port/”,因为它与机器上的现有注册冲突
- php - 在 phpMailer 中动态设置电子邮件地址
- css - 需要删除 React-Bootstrap 列内的两个元素之间的空间
- c# - 当 TransferMode == Automatic 时定义 ASCII 传输的 WinSCP .NET 程序集自定义列表
- python - 检测数据框的所有更改