OSX 上的 sed 中有多个“-e”

Mic*_*ael 3 macos sed

我需要运行sed -e 'command' -e 'command' file.txt,但在 mac 上出现此错误:sed: -e: No such file or directory。知道如何解决这个问题吗?

zou*_*oul 5

与我的配合良好sed

$ echo ax | sed -e 's/a/b/' -e 's/x/y/'
by
$ uname -a
Darwin Equinox.local 12.3.0 Darwin Kernel Version 12.3.0: Sun Jan  6 22:37:10 PST 2013; root:xnu-2050.22.13~1/RELEASE_X86_64 x86_64
$ which sed
/usr/bin/sed
Run Code Online (Sandbox Code Playgroud)

所以问题肯定出在其他地方。根据评论中给出的命令判断,我会尝试将''参数传递给-i选项:

$ sed -i '' -e "s/\.$REGIONID\./\./" -e "/\.$NONREGIONID\./d" application.conf
Run Code Online (Sandbox Code Playgroud)

手册页中描述了警告:

如果给出零长度扩展,则不会保存备份。不建议在就地编辑文件时提供零长度扩展名,因为在磁盘空间耗尽等情况下可能会出现损坏或部分内容的风险。