6

我只是想读入一个日志文件,进行搜索和替换,然后将更改写出到同一个日志文件中。

在 Perl 中执行此操作的最佳实践方式是什么?

4

3 回答 3

9

我通常为此编写一个衬里:

perl -i -pe 's/some/thing/' log.file

这里

于 2009-06-01T13:10:22.470 回答
8

这通常使用单线完成:

perl -pi.bak -e "s/find/replace/g" <file>

请注意该-i.bak部分 - 这将创建一个扩展名为.bak. 如果您想在没有网络的情况下玩,您可以这样做以覆盖现有文件而不进行备份:

perl -pi -e "s/find/replace/g" <file>
于 2009-06-01T13:12:29.533 回答
2

或者你可以使用sed(我知道......你问过perl):

sed -i 's/find/replace/g' <file>
于 2009-06-01T13:22:22.743 回答