【发布时间】:2014-05-23 00:59:32
【问题描述】:
我正在运行awk 命令以从文件中提取 XML 标记,它在我的控制台中成功运行并打印输出所需的标记
awk '/<tag name="some_name">/,/<\/tag>/' file
现在我需要在 Perl 脚本中调用此命令并将控制台中的输出传递给此变量,以便使用 Perl 操作此结构。
我试过了
my $var=`awk '/<tag name="some_name">/,/<\/tag>/' file`
但这不起作用,我有这个错误
awk: cmd. line:1: /<tag name="some_name">/,/</tag>/
awk: cmd. line:1: ^ unexpected newline or end of string
我怎样才能修改这个变量分配,甚至使用其他方法来解决我的问题。
我对所有提议持开放态度,即使一开始不使用 awk 并且只使用 Perl。
【问题讨论】:
-
嗯,既然 Perl 本身也能做到,为什么还要费心从 Perl 中调用 awk 命令呢?事实上,甚至还有
a2p(Awk to Perl) -
@vogomatix 我知道 awk 只用一个命令就可以做到这一点,所以我选择了 awk,如果可以在 perl 中使用这个命令,那就更好了,我如何使用
a2p这个?