为什么没有来自qx(ssh ...)的输出?

时间:2014-07-25 14:42:35

标签: linux bash perl ssh zfs

如果我在Bash做

a=$(ssh 10.10.10.46 ifconfig)

然后我看到$a中的输出,但如果我在Perl中

my @a = qx(ssh 10.10.10.46 ifconfig);
print Dumper @a;

然后我没有得到输出。我有ssh密钥,因此无需登录。

现在我只想获得简单的输出,但后来我想在bash中从远程主机管道到本地主机。将用于ZFS复制。

问题

为什么我看不到Perl中的输出?

2 个答案:

答案 0 :(得分:0)

open(F,'ssh 10.10.10.46 ifconfig |');
my @a=<F>;
close(F);
print Dumper(@a);

答案 1 :(得分:0)

我错过了最后一次print。感谢您的调试技巧。非常有用!

sub rrr {
   my $a = qx(ssh 10.10.10.46 ifconfig);
   return $a;
}

print rrr();