sed的保留空间和模式空间
- pattern space(模式空间)相当于车间sed把流内容在这里处理;
- hold space(保留空间)相当于仓库,加工的半成品在这里临时储存(当然加工完的成品也在这里存储)。
41. Swap Pattern Space with Hold Space (x command)
交换H空间和P空间里面的内容1234567891011121314151617181920212223[root@localordb sed_test]# sed -e 'x;n' empnametitle.txtCEOJohn DoeIT ManagerJason SmithSysadminRaj ReddyDeveloperAnand RamSales Manager[root@localordb sed_test]# cat empnametitle.txtJohn DoeCEOJason SmithIT ManagerRaj ReddySysadminAnand RamDeveloperJane MillerSales Manager
sed ‘x;N’ employee.txt 步骤分析123456# sed 'x;n' employee.txt 102,Jason Smith,IT Manager 101,John Doe,CEO104,anand Ram,Developer103,Raj Reddy,Sysadmin
42. Copy Pattern Space to Hold Space (h command)
拷贝P空间到H空间
Print the names of the managers(输出managers的名字)
|
|
- /Manager/!h 不匹配Manager的行拷贝到H空间
- /Manager/{x;p} 匹配到Manager后,交换H空间的内容,并输出
43. Append Pattern Space to Hold Space (H command)
添加P空间到H空间
44. Copy Hold Space to Pattern Space (g command)
get从H空间复制到P空间
45. Append Hold Space to Pattern Space (G command)
添加P空间到H空间