如何在mac上使用'sed'标志?

时间:2016-10-26 08:57:36

标签: bash macos sed

我找不到使用sed标志和匹配模式的方法。

我正在向我们试试我的旗帜。但我不明白它是如何运作的。

$ sed -i '' -n '/xxx.xxx@xxx.fr/i d' res.txt
sed: 1: "/xxx.xxx@xxx.fr/i d": command i expects \ followed by text

所以我想匹配xxx.xxx@xxx.fr和XXX.XXX@XXX.FR

-i ''仅适用于--in-file (without cache) d用于删除。

那么我如何使用旗帜并最终使用多个旗帜呢?在文档中,我发现它就是这样,但它似乎根本不起作用。

1 个答案:

答案 0 :(得分:2)

我会使用Perl - 它的正则表达式和选项比跨平台的所有sed版本更正交和一致:

perl -i -ne '/XXX.XXX.fr/i || print' res.txt
  • -i表示“就地”编辑
  • -n表示围绕输入行执行循环,如awksed
  • -e表示执行以下脚本