怎么用 sed 把某个文本的某一行的"#"删除

2016-10-13 22:32:23 +08:00
 fazero
hello hahh
#hellojs node

怎么用 sed 把上面第二行的井号删除变成 hellojs node
我想到的是是这个 sed 's/要替换的字符串 /新的字符串 /g'

但是怎么匹配到#号,让它变成空格

对这个不太熟悉,弄了好久
2331 次点击
所在节点    正则表达式
7 条回复
ishamo
2016-10-13 22:39:39 +08:00
sed 's/"#"/d' 不知对不对,没有验证
truehyp
2016-10-13 22:44:48 +08:00
第二行就 sed '2s/#//g' 这是替换行内全部的#,只替换开头的#就 sed '2s/^#//g'
pmpio
2016-10-13 22:46:39 +08:00
国外有本经典的计算机教材,好像是叫《 sed & awk 》吧,非常厚的一本书,看着就吓人。。。。
shiji
2016-10-13 22:52:12 +08:00
sed -i s/\#hellojs\ node/hellojs\ node/
fazero
2016-10-13 22:52:31 +08:00
@ishamo 这样不行
fazero
2016-10-13 22:52:51 +08:00
@truehyp 原来这样 可以了 谢谢
shiji
2016-10-13 22:55:02 +08:00
(我刚刚这个方法是删除#,不是替换成空格)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/312637

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX