技术解析

关于sed空间的问题
0
2021-07-20 02:46:46
idczone
是反转文本的顺序的
[[email protected] ~]# cat b.txt
1aabbcc
2qwee
3aabbcc
4aabbcc
5aabbcc
6aabbcc
7aabbcc
要把这个文本反转,
[[email protected] ~]# sed -n '{G;h;$p}' b.txt
7aabbcc
6aabbcc
5aabbcc
4aabbcc
3aabbcc
2qwee
1aabbcc
做法是这样,但是我根本看不明白。
G是把保持空间的内容附加到模式空间,可一开始保持空间怎么会有内容啊,都没有保存进去。
单独用G就是这样
[[email protected] ~]# sed 'G' b.txt
1aabbcc

2qwee

3aabbcc

4aabbcc

5aabbcc

6aabbcc

7aabbcc

[[email protected] ~]#
模式空间的内容就是文本的内容吧,用h将模式空间的复制到保持空间,
[[email protected] ~]# sed '{G;h}' b.txt
1aabbcc

2qwee
1aabbcc

3aabbcc
2qwee
1aabbcc

4aabbcc
3aabbcc
2qwee
1aabbcc

5aabbcc
4aabbcc
3aabbcc
2qwee
1aabbcc

6aabbcc
5aabbcc
4aabbcc
3aabbcc
2qwee
1aabbcc

7aabbcc
6aabbcc
5aabbcc
4aabbcc
3aabbcc
2qwee
1aabbcc

[[email protected] ~]
怎么就这样了 , 完全看不懂..
求各位帮忙解释下,谢谢了
http://coolshell.cn/articles/9104.html 关键字 Hold Space
希望有用

为什么要用sed,你用 sort -r b.txt 可完成这个任务啊!

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服