23. 命令行中指定多个 sed 命令


正如我们在第 1 节中所示,有多种方法可以从命令行执行多个 sed 命令。

使用 sed 命令行选项 -e 可以指定多个 sed 命令,如下所示:

sed -e 'command1' -e 'command2' -e 'command3'

/etc/passwd 文件中搜索 rootnobodymail

sed -n -e '/^root/ p' -e '/^nobody/ p' -e '/^mail/ p' /etc/passwd 

当你有一个很长的命令时,例如在命令行中使用-e执行多个 sed 命令时,你可以使用 \\ 将其分解。

sed -n -e '/^root/ p' \
-e '/^nobody/ p' \
-e '/^mail/ p' \
/etc/passwd

当您有很多 sed 命令需要执行时,您可以使用{ }将它们分组在一起,如下所示。

sed -n '{
/^root/ p
/^nobody/ p
/^mail/ p
}' /etc/passwd