模式空间:您已经了解模式空间,它用作典型 sed 执行流程的一部分。 模式空间是 sed 的内部缓冲区,sed 在其中放置和修改从输入文件读取的行。
保持空间:这是一个额外的缓冲区,sed 可以在其中保存临时数据。 Sed 允许您在模式空间和保持空间之间来回移动数据,但无法在保持空间上执行典型的 sed 命令。
正如我们已经讨论过的,在典型的 sed 执行流程中,模式空间在每个周期结束时都会被删除。然而,保持空间的内容将在一个周期中保留到下一个周期,它在周期之间不会被删除。
请创建一个新的文本文件用于 sed 保持空间示例:
$ vi empnametitle.txt
John Doe
CEO
Jason Smith
IT Manager
Raj Reddy
Sysadmin
Anand Ram
Developer
Jane Miller
Sales Manager