perl 将grep输出存储到变量中[已关闭]

gorkyyrv  于 2023-02-16  发布在  Perl
关注(0)|答案(1)|浏览(138)

**已关闭。**此问题需要debugging details。当前不接受答案。

编辑问题以包含desired behavior, a specific problem or error, and the shortest code necessary to reproduce the problem。这将有助于其他人回答问题。
2天前关闭。
Improve this question
我尝试使用perl将grep输出存储到变量中,但没有成功。

my $out = `grep -oP "Name = \K(.*)" $file)`;
dced5bon

dced5bon1#

错误

  • )末尾有一个多余的括号
  • always use strict; use warnings;您应该已经看到错误:Unrecognized escape \K passed through

输入文件:

Name = foobar

代码:

perl -Mstrict -we 'print qx(grep -oP "Name = \K(.*)" file)'
Unrecognized escape \K passed through at -e line 1.

最后:

$ perl -Mstrict -we 'my $out = qx(grep -oP "Name = \\K(.*)" file); print $out'
#                                                  ^^
foobar

或者更像英国人的方式

perl -nE 'say $& if /Name = \K.*/' file

相关问题