我正在处理一些旧代码,发现曾经使用过
sed -E 's/findText/replaceWith/g' #findText would contain a regex
但是我现在尝试
sed -e 's/findText/replaceWith/g'
似乎在做同样的事情,还是这样做?我有点记得我这样做是有原因的,但是我不记得了,做“ man sed”并没有帮助,因为他们对-E仅一无所知- e对以太并没有多大意义。
-e, --expression=script Append the editing commands in script to the end of the editing command script. script may contain more than one newline separated command.
我以为-e表示它将与正则表达式匹配…
GNU sed version 4.2.1
从源代码开始,-E是与BSD sed兼容的未记录的选项。
-E
/* Undocumented, for compatibility with BSD sed. */ case 'E': case 'r': if (extended_regexp_flags) usage(4); extended_regexp_flags = REG_EXTENDED; break;
从手册开始,-E在BSD中sed用于支持扩展的正则表达式。