23. 命令行中指定多个 sed 命令
正如我们在第 1 节中所示,有多种方法可以从命令行执行多个 sed 命令。
1. 在命令行中使用多个 -e
选项
使用 sed 命令行选项 -e
可以指定多个 sed 命令,如下所示:
sed -e 'command1' -e 'command2' -e 'command3'
在 /etc/passwd
文件中搜索 root
、nobody
或 mail
:
sed -n -e '/^root/ p' -e '/^nobody/ p' -e '/^mail/ p' /etc/passwd
2. 使用 \
分解多个 sed 命令
当你有一个很长的命令时,例如在命令行中使用-e
执行多个 sed 命令时,你可以使用 \\
将其分解。
sed -n -e '/^root/ p' \ -e '/^nobody/ p' \ -e '/^mail/ p' \ /etc/passwd
3. 使用 { }
对多个命令进行分组
当您有很多 sed 命令需要执行时,您可以使用{ }
将它们分组在一起,如下所示。
sed -n '{ /^root/ p /^nobody/ p /^mail/ p }' /etc/passwd