Chinaunix

标题: sed [打印本页]

作者: mwl940602    时间: 2017-07-09 16:44
标题: sed
有文本如下
abcdef
abcdef
abcdef
用sed如何转换得以下文本:
aaa
bbb
ccc
ddd
eee
fff
求大神解

作者: jason680    时间: 2017-07-09 21:49
回复 1# mwl940602

$ awk -vFS="" '{for(n=1;n<=NF;++n)a[n]=a[n]$n;if(nf<NF)nf=NF}END{for(n=1;n<=nf;++n)print a[n]}' FILE
aaa
bbb
ccc
ddd
eee
fff


作者: mwl940602    时间: 2017-07-10 00:15
jason680 发表于 2017-07-09 21:49
回复 1# mwl940602

$ awk -vFS=&quot;&quot; '{for(n=1;n

大神,能用sed做吗?

作者: sunzhiguolu    时间: 2017-07-10 10:33
  1. perl -nle "{$F[$n++].=$_ for(split(/\B/));$n=0}END{print for @F}" f
复制代码

作者: baby_神    时间: 2017-07-10 10:51
sed是处理行的,对列的处理有点困难
作者: mwl940602    时间: 2017-07-10 11:07
baby_神 发表于 2017-07-10 10:51
sed是处理行的,对列的处理有点困难

好吧,谢谢啦

作者: moperyblue    时间: 2017-07-10 11:39

  1. sed -r '1{s/\B/\n/g};1!{G;s/(.)([^\n]*)\n([^\n]*)/\2\n\3\1\n,/;:a;/^\n/!s/(.)(.*,\n)([^\n]*)/\2\3\1\n,/;ta;s/^\n|\n,//g;$q};h;d'
复制代码





欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2