gpt4 book ai didi

Perl 语法错误,但我一辈子都找不到它

转载 作者:行者123 更新时间:2023-12-03 08:02:40 25 4
gpt4 key购买 nike

这个错误让我很生气。我看不到那些带有括号错误或缺少括号的行附近的任何内容。有人帮我一把吗?这是我的第一篇文章,如果格式关闭,请原谅我;我想我做对了。

编辑:第 87 行,');'错误,是这一行:select(SEXTANT_DAEMON_LOG);

syntax error at -edited- line 87, near ");"
syntax error at -edited- line 92, near "if"
syntax error at -edited- line 99, near "if"
Unmatched right curly bracket at -edited- line 102, at end of line
syntax error at -edited- line 102, near "}"
syntax error at -edited- line 109, near "}"
syntax error at -edited- line 120, near ");"
BEGIN not safe after errors--compilation aborted at -edited- line 122.

这是错误附近的代码( full code here ):
$MAIN_DBH = getConnection('Main');
$fs_logfile = getCSConfigValue($MAIN_DBH, 'Log', 'Sextant Update Daemon') or die "pid$$[" . localtime(time()) . "] Main dbh error: " . DBI::errstr;
open(SEXTANT_DAEMON_LOG, '>>', $fs_logfile) or die "pid$$[" . localtime(time()) . "] unable to open log file '$fs_logfile'\n";
$tmp = select(SEXTANT_DAEMON_LOG);
$| = 1;
select(SEXTANT_DAEMON_LOG);

最佳答案

Perl 没有给出很好的错误信息,但它实际上提示的是 "pid$$["看起来访问数组 @$ 的尝试无效.尝试将其替换为 "pid$$\[" .

我发现的方法是插入 __END__ 靠近报告的第一个错误的位置。我上下移动它,直到找到导致错误的第一行,即

$fs_logfile = getCSConfigValue($MAIN_DBH, 'Log', 'Sextant Update Daemon') or die "pid$$[" . localtime(time()) . "] Main dbh error: " . DBI::errstr;

然后我尝试添加反斜杠,它修复了错误。

注: perl -c 在这种情况下非常有用。

关于Perl 语法错误,但我一辈子都找不到它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6780221/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com