Chinaunix首页 | 论坛 | 博客
  • 博客访问: 237200
  • 博文数量: 52
  • 博客积分: 1492
  • 博客等级: 上尉
  • 技术积分: 554
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-09 15:54
文章分类
文章存档

2010年(52)

我的朋友

分类:

2010-07-05 10:58:11

去掉文件中的换行符

(1)tr命令的操作是针对文件的操作,它把整个文本当做操作的对象,所以可以直接去除文件中的换行符
tr '\n' ' ' < file
(2)sed的操作对象是行.而作为行分割符号的回车符,本身是不属于行的.所以sed中必须加上N命令,把下一行的内容添加到当前的pattern space中,这样实际上是把相邻的2行合并了.下一次仍然是先n,再p,再N,开始新的轮回:
cat file | sed 'N;s/\n/ /'
所以上面的语句是不能把文件内容合并为一行的,到底该怎么写,我暂时没有想到,呵呵
(3)直接用awk
awk '{printf("%s ",$0)}'
 file
(4)当然,用echo也是可以的:
while read line;do echo -n "$line"; done < awk_help.txt, 这样,可以把awk_help.txt的内容合并为一行

sed -e "s#\[/r][/r][/n]#\[/r][/n]#g" file

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