Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法执行perl脚本_Perl - Fatal编程技术网

无法执行perl脚本

无法执行perl脚本,perl,Perl,我是Perl新手,希望使用Excel绘制图表。我发现了一些代码,但当我试图执行它时,它只显示按任意键继续。。。在命令提示下。该代码可由其他人执行。我还尝试下载excelwriter包并将它们放在lib文件夹中,但根本没有执行。这段代码可以执行 #!/usr/bin/perl use strict; use warnings; use Excel::Writer::XLSX; my $workbook = Excel::Writer::XLSX->new('chart.xlsx'); m

我是Perl新手,希望使用Excel绘制图表。我发现了一些代码,但当我试图执行它时,它只显示按任意键继续。。。在命令提示下。该代码可由其他人执行。我还尝试下载excelwriter包并将它们放在lib文件夹中,但根本没有执行。这段代码可以执行

#!/usr/bin/perl
use strict;
use warnings;
use Excel::Writer::XLSX;

my $workbook  = Excel::Writer::XLSX->new('chart.xlsx');
my $worksheet = $workbook->add_worksheet();

# Add the worksheet data the chart refers to.
my $data = [
    ['Category', 2, 3, 4, 5, 6, 7],
    ['Value',    1, 4, 5, 2, 1, 5],
];
$worksheet->write('A1', $data);

# Add a worksheet chart.
my $chart = $workbook->add_chart(type => 'column');

# Configure the chart.
$chart->add_series(
    categories => '=Sheet1!$A$2:$A$7',
    values     => '=Sheet1!$B$2:$B$7',
);
__END__

有人知道吗?

它正在执行。您可以在文件中的某个位置构建Excel表,而无需在屏幕上打印任何内容。按任意键继续。。。当脚本成功完成时,系统将打印提示。如果不确定脚本工作目录的位置,可以使用Cwd模块进行检查。还要确保工作目录是可写的。

它正在执行。您可以在文件中的某个位置构建Excel表,而无需在屏幕上打印任何内容。按任意键继续。。。当脚本成功完成时,系统将打印提示。如果不确定脚本工作目录的位置,可以使用Cwd模块进行检查。还要确保工作目录是可写的。

以下是Oleg回答的意思:

根据所使用的操作系统,调用perl程序的方式可能会有所不同。这就是我的感觉

simbabque@box:~>perl xsltest.pl simbabque@box:~>

现在,如果您不确定工作目录在哪里,请按如下方式编辑代码:

#!/usr/bin/perl
use strict;
use warnings;
use Excel::Writer::XLSX;
use Cwd;                 # <--- new line!
print cwd(), "\n";       # <--- new line!
simbabque@box:~> perl xsltest.pl 
/home/simbabque/
simbabque@box:~>
在我的例子中,工作目录就是我从中调用perl的目录。不过,它可能是另一个

虽然它不会在屏幕上打印任何内容,但它应该在我的工作目录中创建名为chart.xlsx的文件。我可以在命令行上用ls查找它,或者说file chart.xlsx查看它是否被索引为Excel文件

simbabque@box:~> file chart.xlsx
chart.xlsx: Zip archive data, at least v2.0 to extract
我现在可以在Excel或Libre Office中打开它


如果您在Windows上,请打开资源管理器并将其指向cwd函数所说的位置。在那里,您可以双击文件以在Excel中打开它。如果它与程序的文件夹相同,您也可以使用文本编辑器的“打开”对话框,右键单击chart.xlsx,然后单击“打开”而不是“选择”。

以下是Oleg回答的意思:

根据所使用的操作系统,调用perl程序的方式可能会有所不同。这就是我的感觉

simbabque@box:~>perl xsltest.pl simbabque@box:~>

现在,如果您不确定工作目录在哪里,请按如下方式编辑代码:

#!/usr/bin/perl
use strict;
use warnings;
use Excel::Writer::XLSX;
use Cwd;                 # <--- new line!
print cwd(), "\n";       # <--- new line!
simbabque@box:~> perl xsltest.pl 
/home/simbabque/
simbabque@box:~>
在我的例子中,工作目录就是我从中调用perl的目录。不过,它可能是另一个

虽然它不会在屏幕上打印任何内容,但它应该在我的工作目录中创建名为chart.xlsx的文件。我可以在命令行上用ls查找它,或者说file chart.xlsx查看它是否被索引为Excel文件

simbabque@box:~> file chart.xlsx
chart.xlsx: Zip archive data, at least v2.0 to extract
我现在可以在Excel或Libre Office中打开它


如果您在Windows上,请打开资源管理器并将其指向cwd函数所说的位置。在那里,您可以双击文件以在Excel中打开它。如果它与程序的文件夹相同,您也可以使用文本编辑器的“打开”对话框,右键单击chart.xlsx,然后单击“打开”而不是“选择”。

您看到它应该创建的文件了吗?将它们放在lib文件夹中-这不是安装perl软件包的正确方法。。虽然它必须看到一些错误消息,如果出现了一些错误,做一些谷歌-ing。什么是可执行的其他人实际上意味着什么?你在另一台机器上创建了Excel文件?代码在我的机器上运行,刚刚通过cpan安装了Excel::Writer::XLSX,运行得很好。你看到它应该创建的文件了吗?将它们放在lib文件夹中-这不是安装perl包的正确方法。。虽然它必须看到一些错误消息,如果出现了一些错误,做一些谷歌-ing。什么是可执行的其他人实际上意味着什么?你在另一台机器上创建了Excel文件吗?代码在我的机器上运行,刚刚通过cpan安装了Excel::Writer::XLSX,它运行了greati Don understand。。很抱歉我对这个项目很陌生,我不懂。。很抱歉我对这个项目很陌生。