【发布时间】:2013-08-07 15:06:50
【问题描述】:
很快我就遇到了问题,无法从 Perl 脚本通过管道传输到 Gnuplot 本身的 Gnuplot 命令墙。我的主要起始参考是perlmonks。然后子函数看起来像:
sub binPics {
my $inFileName = shift;
my $outFileName = shift;
my $outputFormatPics = shift;
open(GP, "| gnuplot") or die "Error while piping to Gnuplot: $! \n";
print GP << " GNU_EOF"
plot "$inFileName" u 2 lw 2.5 lc 1 , "" u 3 lw 2.5 lc 2
set terminal $outputFormatPics
set output '$outFileName.$outputFormatPics'
replot
GNU_EOF
}
在此之后,第二个子函数使用类似的语法但不同的 Gnuplot 命令定义。我按照我定义它们的顺序调用这些子函数。稍后在脚本中生成的图片将被进一步使用。这会产生错误。
那么这里的问题是什么?可能的运行脚本会是什么样子?
我将为这个问题提供我的固定脚本,但无法解释整个 heredoc 语法。随意这样做或提供其他建议。
/编辑
缩进不再以 SO 样式显示。 heredoc 中的行将制表符作为第一个命令(用于构建代码)。
【问题讨论】: