如今有一个需求,就是将各个行的文本用|分割,而后放到一行ide
1.txt的内容以下:it
zhangsanclass
lisised
wangwu循环
须要合并为:di
zhangsan|lisi|wangwuview
按照以前的思路,就是不断的sed 'N;s/\n/|/' 1.txtvi
N的意思就是,将下一行合并到当前行,而且将两行用\n隔开。co
但这样太麻烦了,后来从网上搜了一下,editor
从网上搜到一行代码:
sed ':a;N;s/\n/|/;ta' 1.txt
:a 和ta 是一对符号,:a是先作一个标记,而后若是ta以前执行成功,则跳转到:a标识符继续执行,达到了循环的效果。
这样就方便多了。