perl - 使用 grep 和 sed 提取数据

perl - Extract data using grep and sed

我正在使用此代码从 http://something.txt:

的网址获取所有标题
#!/usr/bin/perl -w
$output = `cat source.html | grep -o '<a .*href=.*>' | grep -E 'txt' | sed -e 's/<a /\n<a /g' | sed -e 's/<a .*title="//' | cut -f1 -d '"'`;

print("$output");

当我 运行 在 perl 上执行此操作时,出现错误:

sed: -e expression #1, char 6: unterminated `s' command

错误与这部分代码有关:

sed -e 's/<a /\n<a /g'

在反引号中,Perl 使用与双引号相同的规则。因此,\n对应一个换行符;您必须反斜杠反斜杠才能将文字 \ 传递给 shell:

`sed -e 's/<a /\n<a /g'`