我找到了如何使用 sed 将一行中的第一个单词与第三个单词交换,但我不知道-E
语法是什么:sed -E 'regular expression'
。是什么意思'-E'
?谢谢!此外,我可以将更改应用到文件吗?
答案1
-E是为了与 BSD 兼容。它是一样的-r或者--正则表达式扩展— 在脚本中使用扩展正则表达式。看https://stackoverflow.com/a/3139925/3292582
要应用更改,您可以
- 使用临时文件,
- -我选项(如果您的
sed
版本支持)(GNUsed
— Linux 上的默认设置 — 和 BSDsed
— 也安装在 OSX 上 — 都支持它) - 编辑命令,但它有不同的命令集。