use*_*033 3 perl shell-script environment-variables variable
我有一个 shell 脚本,我在其中通过以下代码运行 perl 脚本。
perl perlscript.pl
Run Code Online (Sandbox Code Playgroud)
在 perl 脚本中,我定义了一个名为$circle
. 现在我想在我的 shell 脚本中使用这个变量值。我怎么打电话?
如果您的perl
脚本除了 $circle 的值之外没有其他输出,您可以使用命令替换将该输出存储在一个变量中。例如:
circle=$(perl perlscript.pl)
Run Code Online (Sandbox Code Playgroud)
如果perl
脚本也生成其他输出(或根本不输出),则您必须:
只提取您使用常用的文本处理工具的输出(所需的值sed
,awk
,perl
,grep
,等)。这是一个非常简单的例子:
circle=$(perl perlscript.pl | sed -e 's/junk.i.dont.want//')
使用间接方法,例如让perl
脚本将 $circle 的值写入文件(例如/path/to/circle
),以便您的 shell 读取它(例如circle=$(cat /path/to/circle)
)
注意:如果没有您提供更多详细信息,就不可能提供比这样的一般性建议更多的内容。