Chinaunix首页 | 论坛 | 博客
  • 博客访问: 503813
  • 博文数量: 401
  • 博客积分: 244
  • 博客等级: 入伍新兵
  • 技术积分: 2215
  • 用 户 组: 普通用户
  • 注册时间: 2012-08-04 10:02
文章分类

全部博文(401)

文章存档

2013年(37)

2012年(364)

分类:

2012-11-23 15:38:44

原文地址:多行合并为一行 作者:CUDev


标题: 多行合并为一行
注:这是LinuxSir上的一篇讨论多行合并的帖子,整理一下。

#cat tmp
a
b
c
d

让它成为:
#cat tmp
a b c d



1.
#cat tmp | tr -s "\n" " " a b c d

2.
#echo `cat tmp` a b c d

3.
sed ':a;N;$!ba;s/\n/\ /g'
注意:因为sed在处理文本时,一次读入一行,把最后的newline符号去掉,
把剩余部分加入pattern space,处理后追加一个newline并输出。所以
sed 's/\n/\ /g'是无效的。

4.
while read line; do echo -n $line\ ; done
5.
awk '{printf "%s ",$0}'

gawk 'BEGIN { FS="\n";ORS=" "}
{print $0}'
/home/2.txt

阅读(291) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~