在vmware上执行的脚本

时间:2014-03-11 10:13:06

标签: bash shell vmware esxi

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

当我执行脚本时,返回“command not found”错误:

> "./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

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

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

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

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

shell和bash有一些区别,

一些信息here about shell.和 有关the difference here.

的更多信息