是否有任何说明符告诉Perl解释器真正的Perl脚本从某行开始,然后输出将具有来自解释器的正确行号,如解释错误消息?例如,以下脚本中的行号信息不正确。
@perl -x "%~f0" %*
@exit /b %errorlevel%
#!perl
use strict;
printxxx "Perl Script\n"; # interpreter will output error for this line with **incorrect line number**
答案 0 :(得分:2)
您可以使用line directive,这是一种特殊形式的评论,看起来像# line 99
,并指示perl将分配给以下行的行号。
例如
#!/usr/bin/perl
use strict;
use warnings;
use 5.010;
STDOUT->autoflush;
# line 100
say "line ". __LINE__;
die;
<强>输出强>
line 100
Died at E:\Perl\source\line.pl line 101.
也可以在行号后面添加一个文件名,类似地说明了perl将报告的源文件名。