如何使用sed将线段移动到另一个位置?
想象一个像这样的文件:
ligne
ligne
toto
tutu
titi
想得到:
ligne
toto
tutu
titi
ligne
已知的模式是“ tutu”和目标行号“ 2”,以及我要移动的文本块的原始行号。
所以我想将其复制(使用前1行和1行连续行)到我已经知道的特定位置(第2行)
我试过了 :
sed '2,5{ H ;d ; } ; 2{ p ; x ; }' file
但“粘贴”部分无效,因此仅显示:
ligne
我不太了解如何将缓冲区粘贴到一行的数值上。那就是我想要的。
好的,就像写的一样:
$ sed -n '1p; 2h; 3,/tutu/N; /tutu/ N; ${G; p;}' file
ligne
toto
tutu
titi
ligne
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句