我正在将值从perl / bash脚本传递到以下html代码,以使其如下所示打印。
Top_Heading 1 : One
Middle_Heading 2 : two
其中$ heading_1的值为Top_Heading 1,$ Value1为One,类似于标题2
在perl脚本中传递以下值。
my $heading_1 = $ARGV[0];
my $Value1 = $ARGV[1];
my $heading_2 = $ARGV[2];
my $Value1 = $ARGV[3];
<tr>
<td><b> <TMPL_VAR NAME= heading_1> :</b> <TMPL_VAR NAME= Value1> </td>
</tr>
<tr>
<td><b> <TMPL_VAR NAME= heading_2> :</b> <TMPL_VAR NAME= value2> </td>
</tr>
答案 0 :(得分:2)
您似乎正在尝试使用HTML::Template。但我只知道这一点,因为我认识到您的HTML代码段中的语法。将来,您可能应该在问题中加入类似的重要信息。
该模块的文档(上面链接)非常好。我从来没有亲自使用过该模块,但是浏览了文档之后,我便能够编写这个简单的演示程序(根据您的要求)。
#!/usr/bin/perl
use strict;
use warnings;
use HTML::Template;
@ARGV == 4
or die "Not enough arguments\n";
my ($heading1, $value1, $heading2, $value2) = @ARGV;
my $template = <<EO_HTML;
<tr>
<td><b> <TMPL_VAR NAME=heading_1> :</b> <TMPL_VAR NAME=Value1> </td>
</tr>
<tr>
<td><b> <TMPL_VAR NAME=heading_2> :</b> <TMPL_VAR NAME=value2> </td>
</tr>
EO_HTML
my $ht = HTML::Template->new(scalarref => \$template);
$ht->param(
heading_1 => $heading1,
Value1 => $value1,
heading_2 => $heading2,
Value2 => $value2,
);
print $ht->output;