一.sed中的模式空间和保留空间的概念
1.sed的一般工作模式(没有利用到Hold space时)
每次从input中取一行数据到pattern space中,经一些处理,将一行数据放入output中。记住,此时pattern space还储存着这一行数据,直到input再放入第二行数据取代第一行数据。
2.h/H;g/G;x涉及到hold space(x:换p空间和h空间)
理解了sed中的模式空间和保留空间(初始为一个空行)有助于从本质上理解实现逆转.只输出奇数或偶数行等等功能。
可以简单的将hold space理解为sed的一个缓冲区,只是这个缓冲区不会直接进行输出,并且只有pattern space可以对其进行操作,放入或者拿出数据。
3.多将h/H;g/G;x联合使用,以达到栈和队列的使用目的
h拷贝p-space的内容到h-space。
H追加p-space的内容到h-space
g获得h-space的内容,并替代当前p-space中的文本。
G获得内存-space的内容,并追加到当前p-space文本的后面。
图太多,以后再传