我在Ubuntu 12.04上使用VirtualBox来运行虚拟机。我正在尝试使用VBoxManage通过CLI执行VirtualBox命令。我想在文本文件中捕获它的输出,所以我写了以下内容:
use warnings;
use strict;
use File::Slurp;
my $vmname = <STDIN>;
system("vboxmanage showvminfo $vmname | > vminfo.txt");
my @vminfo = read_file('vminfo.txt');
print @vminfo;
然而,没有任何反应。当我打开vminfo.txt时它是空的。它应该包含很多关于VM的信息。
甚至可以提交这样的命令吗?我知道将vboxmanage作为前缀可能会出现问题。有没有办法可以逃避该命令并在同一行上提交bash命令?
感谢。
答案 0 :(得分:1)
您不需要重定向到文件:
chomp( my @vminfo = `vboxmanage showvminfo $vmname` );