perl exec
exec(PROGRAM);
$result = system(PROGRAM);
Both Perl's exec() function and system() function execute a system shell command. The big difference is that system() creates a fork process and waits to see if the command succeeds or fails—returning a value. exec() does not return anything, it simply executes the command. Neither of these commands should be used to capture the output of a system call. If your goal is to capture output, you should use the backtick operator:
Perl的exec()函数和system()函数均执行系统shell命令。 最大的区别是system()创建了一个fork进程,并等待查看命令是成功还是失败(返回一个值)。 exec()不返回任何内容,它只是执行命令。 这些命令都不应该用于捕获系统调用的输出。 如果您的目标是捕获输出,则应使用backtick运算符 :
$result = `PROGRAM`;
翻译自: https://www.thoughtco.com/perl-array-exec-system-function-tutorial-2641183
perl exec