【发布时间】:2014-02-22 00:31:57
【问题描述】:
多年来,我一直在使用带有-ne 选项的 Perl 命令行,主要用于以 sed 无法处理的方式处理文本文件。示例:
cat in.txt | perl -ne "s/abc/def/; s/fgh/hij/; print;" > out.txt
我不知道我是从哪里学来的,今天才看到perlrun,发现还有其他形式(例如perl -pe)。
关于perl -ne,我还应该知道什么?
【问题讨论】:
-
perl -pe适合您的示例代码。使用-pe并删除print语句 -
好吧,这一切都在 perlrun 中。每个 Perl 黑客都应该阅读文档。 :)
-
也可以跳过“cat in.txt |”部分,只需将 in.txt 放在命令行末尾,因为“wokka”操作符将选取在 cmd 行末尾命名的文件,或 stdin.
-
Perl 黑客(以及非 Perl 黑客)应该了解 UUOC (sial.org/howto/shell/useless-cat) ...
-
我应该说这是一个非常简单的例子,我通常不会只关注这样的东西,一个 perl -ne 更有可能出现在一堆各种流水线命令的中间类型。不过感谢您的 cmets。
标签: perl command-line