将vim-cmd命令的输出存储到变量中

时间:2016-02-04 00:59:20

标签: vcenter

我有一个命令,我想从shell脚本运行:

vim-cmd vmsvc / getallvms

我想将此命令的输出转换为变量:

60 abc-trunk [xxxxx] abc-trunk / abc-trunk.vmx rhel6_64Guest vmx-10 xxxx OEM,CentOS 6.7,最新的中继安装来自xxxx.yyyyyy.com

我想把输出变成一个变量,然后从变量中修剪所有内容,这样我剩下的就是一个可以读取的变量" abc-trunk"

1 个答案:

答案 0 :(得分:0)

你可以用PHP做到这一点,

$result= "60 abc-trunk [xxxxx] abc-trunk/abc-trunk.vmx rhel6_64Guest vmx-10 xxxx OEM, CentOS 6.7, latest trunk install from xxxx.yyyyyy.com";
$lines = explode("/n",$result);     
foreach($lines as $key=>$val)
            {
                $val = preg_replace('/\s+/', '|', $val);
                $l = explode("|", $val);
                if($l['1'] <> "")
                {
                    $vm=$l['1'];
                }
            }
print_r($vm);

这将输出&#34; abc-trunk&#34;。

根据需要编辑foreach循环中的代码。