如何从Perl脚本中获取输出?

use*_*386 2 bash perl

我正在寻找一种方法来在一个声明中完成这个:

./perlscript.pl ./inputFile "some option" > temp.sh; source temp.sh; rm -f temp.sh
Run Code Online (Sandbox Code Playgroud)

temp.sh

export ENV_VAR="some value"
Run Code Online (Sandbox Code Playgroud)

并在上述命令echo $ENV_VAR报告后some value.

我试过了

./perlscript.pl ./inputFile "some option" | source /dev/stdin
Run Code Online (Sandbox Code Playgroud)

并且脚本运行,但source似乎没有奏效; echo $ENV_VAR没有显示.我觉得这非常接近,但我的想法已经用完了.

有任何想法吗?

Thi*_*Not 6

您可以使用以下过程替换:

source <(./perlscript.pl inputFile "some option")
Run Code Online (Sandbox Code Playgroud)