Perl 我得到一个错误:语法错误在-e行1,在EOF执行-e时由于编译错误而中止

Perl 我得到一个错误:语法错误在-e行1,在EOF执行-e时由于编译错误而中止,perl,scripting,Perl,Scripting,编写perl脚本是为了发送数据。 它正在抛出异常,如图所示: 在-e第1行出现语法错误,在EOF执行-e时由于以下原因中止 编译错误 代码: patln=`awk -v dat="$dt" '$0 ~ dat {print NR}' *path of the file where the logs are present*| head -1` STATUS=$( perl -ne "print if $. >= $patln" *path of the file where the l

编写perl脚本是为了发送数据。 它正在抛出异常,如图所示:

在-e第1行出现语法错误,在EOF执行-e时由于以下原因中止 编译错误

代码:

patln=`awk -v dat="$dt" '$0 ~ dat {print NR}' *path of the file where the logs are present*| head -1` 

STATUS=$( perl -ne "print if $. >= $patln" *path of the file where the logs are present* | grep TABLE

不要试图生成Perl代码

#使用环境变量。
出口零件
perl-如果$.>=$ENV{patln}&&/TABLE/'--“$LOG”

#使用一个env变量(预期仅用于一个进程)。
patln=“$patln”perl-ne”如果$.>=$ENV{patln}&&/TABLE/'--“$LOG”

#使用参数(例如使用-s)
perl-sne'print if$.>=$patln&&/TABLE/'--patln=“$patln”--“$LOG”

这里甚至不需要Perl。 tail-n+“$patln”--“$LOG”| grep表
显示的代码有一个不平衡的括号,并且日志所在文件的
*路径*实际上不存在,是吗?发布真实代码。尝试在perl代码周围使用单引号而不是双引号?我尝试使用单引号。没有帮助。是的,日志文件存在。如何计算变量
$pathln
?如果用
Perl-ne“print”替换Perl脚本,是否仍然会出现语法错误