0

对于一个项目,我创建了一个 bash 脚本,该脚本将 VNC 端口与相应的 VM 写入文本文件中。我正在尝试使用相应的 VM 输出正确的 VNC 端口。bash 脚本的输出类似于:

 Port: 5903    VM : i-2-3-VM
 Port: 5904    VM : i-4-6-VM
 Port: 5902    VM : r-4-VM
 Port: 5901    VM : s-1-VM
 Port: 5900    VM : v-2-VM

每行中的数字对应于 VNC 端口。

不,我在可以使用的变量中获得了 VM 名称,尽管我使用了一个静态值来查看我的脚本是否真的有效。该脚本首先输出条目 $data 变量作为检查。该脚本应该输出“r-4-VM”,我想我可以获取以前的数组以稍后获取实际端口。但是脚本并没有输出我首先要寻找的值。我知道该值存在,因为我之前打印了 $data 作为参考。

<?php
session_start();

$file = file_get_contents('/var/www/html/webpanel/text.txt');

$data = explode(' ', $file);
$array = array($data);

$count = count($array);

print_r($data);


for ($i=0; $i <= $count; $i++) { 


        if (strstr($data[$i] , 'r-4-VM')) {

            print_r($data[$i]);
    }

}
?>
4

1 回答 1

0
<?php
session_start();


$array = file($file);

$count = count($array);

print_r($array);


for ($i=0; $i <= $count; $i++) { 


    if (strstr($array[$i] , 'r-4-VM')) {

        print_r($array[$i]);
}

}
?>

试试看。

于 2013-01-14T14:52:44.003 回答