上一篇中介绍了N/D/P三个命令,它们可以形成多行的模式空间,在一点程度上弥补了单行模式空间的不足,我们用sed编辑文本的能力又进了一步。模式空间是sed内部维护的一个缓存空间,它存放着读入的一行或者多行内容。但是模式空间的一个限制是无法保存模式空间中被处理的行,因此sed又引入了另外一个缓存空间——模式空间(Hold Space)。
保持空间
保持空间用于保存模式空间的内容,模式空间的内容可以复制到保持空间,同样地保持空间的内容可以复制回模式空间。sed提供了几组命令用来完成复制的工作,其它命令无法匹配也不能修改模式空间的内容。
操作保持空间的命令如下所示:
名称 | 命令 | 说明 |
---|---|---|
保存(Hold) | h/H | 将模式空间的内容复制或者追加到保持空间 |
取回(Get) | g/G | 将保持空间的内容复制或者追加到模式空间 |
交换(Exchange) | x | 交换模式空间和保持空间的内容 |