1

VMware ESXi 系统提供带有特定命令(如 esxcli)的 shell,并且仅适用于这些节点。我想编写一个脚本来从文件中读取系统 IP,登录每个系统并执行命令esxcli network ip get

当我执行脚本时,返回“找不到命令”错误:

> "./snmp.sh: line 3: esxcli: command not found

有没有办法来解决这个问题?脚本如下:

#!/bin/bash

while read host; do
  ssh -n root@$host esxcli network ip get
done < esxi.txt
4

2 回答 2

1

exscli不在 esxi 服务器上的 PATH 中。最简单的解决方法是将其与完整路径 (fe /usr/bin/esxcli) 一起使用。您可以使用 command 在 esxi 服务器上找到 esxcli 命令的有效路径which esxcli

于 2014-03-11T10:19:07.700 回答
0

您可以使用 shell 在 ESXI 中运行脚本。

#!/bin/sh
echo "some vms:"
vim-cmd vmsvc/getallvms

并将其保存为“something.sh”。

shell和bash有一些区别,

这里有一些关于 shell 的信息。以及有关此处差异的更多信息

于 2016-12-21T21:38:04.523 回答