我无法将 unix 命令的返回值转换为 perl 变量。
Unix命令:
#nc -z 8.8.8.8 441; echo $?
1
Perl 命令:
#perl -e 'my $pstate=`nc -z 8.8.8.8 441; echo $?`; print $pstate;'
0
那么perl命令似乎得到了“无错误”的返回值?如何正确捕获 *nix 命令的返回值?
另一个例子:
#perl -e 'my $pstate=`ping -v 8.8.8.8 -c 1`; print $pstate;'
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
这将返回正确的值。那么我首先做错了什么?