package Shell:系统命令不适用于Centos 7.4

时间:2018-01-17 13:56:52

标签: linux perl perl-module

Shell模块Shell.pm似乎没有使用Centos 7.4运行shell命令。

例如,以下脚本可以使用Centos 6.4:

#!/usr/bin/perl
use Shell qw(ps);

$cmd=ps;
print  $cmd . "\n";

结果符合预期:

PID TTY          TIME CMD
29090 pts/1    00:00:00 bash
29325 pts/1    00:00:00 test.pm
29326 pts/1    00:00:00 ps

但是使用Centos 7.4

#!/usr/bin/perl -I /usr/share/perl5/CPAN

use Shell qw(ps);

$cmd=ps;
print  $cmd . "\n";

结果是:

ps

如果我添加到上一个脚本:

cat("/etc/passwd");

引发以下错误:

Undefined subroutine &main::cat called at ./test.pm line 10

使用真实脚本,没有一个系统命令可以很好地解释。我应该用system('command')重写所有内容吗??

1 个答案:

答案 0 :(得分:0)

最后我成功了! 安装不是很好。

我必须跑:

cpan App::cpanminus

然后

cpanm Shell