找回密码
 FreeOZ用户注册
查看: 2341|回复: 6

[Linux] add \ to the end of each line

[复制链接]
发表于 30-12-2010 15:08:04 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?FreeOZ用户注册

x
sed "s/\(.*\)/\1 \\\/g" will do the work.

Why need \\\ here. ( three \ char)
回复  

使用道具 举报

发表于 30-12-2010 15:27:47 | 显示全部楼层
I don't think it work, might be:

s/\(.*\)/\1\ \\/g

this first '\' after '\1' is useful for the space, the rest '\\' ouput '\'
回复  

使用道具 举报

发表于 30-12-2010 16:53:13 | 显示全部楼层
有点绕口吧,可以再简练一些

[root@redhat5 Arrays]# cat 1.txt
1 2 3
1 2 3
1 2 3
[root@redhat5 Arrays]# sed 's/$/\\/g' 1.txt
1 2 3\
1 2 3\
1 2 3\

评分

参与人数 2威望 +65 收起 理由
valpa + 15 昨天的 50分怎么不见了
coredump + 50 你太有才了!

查看全部评分

回复  

使用道具 举报

发表于 30-12-2010 16:58:18 | 显示全部楼层

回复 #3 李大锤 的帖子

对,你这样写就可以了,最简单,楼主应该是不知道$用作行尾,^用作行首
回复  

使用道具 举报

 楼主| 发表于 7-1-2011 21:57:17 | 显示全部楼层

回复 #3 李大锤 的帖子

明天再给你分,多谢,我一直试啊试啊,就是试不出来
楼下的core,我知道^$, 是最基本的东西
回复  

使用道具 举报

发表于 8-1-2011 13:23:06 | 显示全部楼层
我不会用sed,一般用awk来实现:
  1. cat 1.txt | gawk '{print $0"\\"}'
复制代码

评分

参与人数 1威望 +20 收起 理由
valpa + 20 谢谢分享!

查看全部评分

回复  

使用道具 举报

发表于 9-1-2011 17:48:30 | 显示全部楼层
\\\
第一个是告诉bash第二个\转义,第二个告诉regex engine第三个\转义

评分

参与人数 1威望 +20 收起 理由
valpa + 20 谢谢分享!

查看全部评分

回复  

使用道具 举报

您需要登录后才可以回帖 登录 | FreeOZ用户注册

本版积分规则

小黑屋|手机版|Archiver|FreeOZ论坛

GMT+11, 29-3-2024 21:42 , Processed in 0.044313 second(s), 27 queries , Gzip On, Redis On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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