LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 853|回复: 7

怎么实现在一个文件中每隔20个字符加一个“##”标记??

[复制链接]
发表于 2003-12-20 16:54:42 | 显示全部楼层 |阅读模式
rt!!
谢谢
发表于 2003-12-20 18:37:48 | 显示全部楼层
  1. cat urfile|tr "\n" "="|sed 's/.\{20\}/&\# #/g'|tr "=" "\n"
复制代码
 楼主| 发表于 2003-12-20 22:16:44 | 显示全部楼层

thank u, but what's the meaning of "tr "\n" &

rt!!
发表于 2003-12-20 23:00:32 | 显示全部楼层

回复: thank u, but what's the meaning of "tr "\n&quot

最初由 xiaoyan 发表
rt!!

先把回车变成=,(随便一个字符都可以),最后在把=再变成回车,这样就满足了把一个文件每隔20个字符加个##,因为回车符也是字符嘛~~
 楼主| 发表于 2003-12-21 12:45:34 | 显示全部楼层
哦,谢谢,如果要在每一行的开头加“##”呢?
 楼主| 发表于 2003-12-21 12:48:27 | 显示全部楼层
行尾应该是这样吧?
  cat urfile|sed 's/$/&\# #/g'
发表于 2003-12-21 13:16:05 | 显示全部楼层
最初由 xiaoyan 发表
哦,谢谢,如果要在每一行的开头加“##”呢?

方法很多,我喜欢这样:
  1. while read i;do echo "# #"$i;done<oldfile >newfile
复制代码
或者用sed
  1. sed 's/^/# #/g' oldfile >newfile
复制代码
发表于 2003-12-21 13:32:36 | 显示全部楼层
最初由 xiaoyan 发表
行尾应该是这样吧?
  cat urfile|sed 's/$/&\# #/g'
  1. sed 's/$/# #/g' urfile
复制代码
这样就OK
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表