得之我幸 失之我命

when someone abandons you,it is him that gets loss because he lost someone who truly loves him but you just lost one who doesn’t love you.

sed 分隔符之谜

昨天在用 sed 替换某行 python 代码的时候,遇到了下面这个错

1
2
$ sed -i 's/"http": None/"http": "http://1.1.1.1:8080"/g' ~/demo.py
sed: -e expression #1, char 36: unknown option to `s'

根据百度,找到了原因,替换的字符串包含有分隔符 /,解决办法也不难,就是换一个分隔符就可以,比如:

1
$ sed -i 's!"http": None!"http": "http://1.1.1.1:8080"!g' ~/demo.py

但是这时候,新的疑惑就来了,分隔符是可以换的,那 sed 有多少种分隔符可以用?

s/BRE/replacement/flags

将替换字符串替换为模式空间中 BRE(Basic Regular Expressions) 的实例,可以使用除反斜杠和换行符之外的任何字符来分隔 BRE 和替换,在 BRE 和替换中,如果分隔符前面有反斜杠,那么这个分隔符本身作为常规字符使用

be yourself, everyone else is already taken.