sed 的 -E 选项有什么作用?

sed 的 -E 选项有什么作用?

我找到了如何使用 sed 将一行中的第一个单词与第三个单词交换,但我不知道-E语法是什么:sed -E 'regular expression'。是什么意思'-E'?谢谢!此外,我可以将更改应用到文件吗?

答案1

-E是为了与 BSD 兼容。它是一样的-r或者--正则表达式扩展— 在脚本中使用扩展正则表达式。看https://stackoverflow.com/a/3139925/3292582

要应用更改,您可以

  • 使用临时文件,
  • -我选项(如果您的sed版本支持)(GNU sed— Linux 上的默认设置 — 和 BSD sed— 也安装在 OSX 上 — 都支持它)
  • 编辑命令,但它有不同的命令集。

相关内容