sed -e "/#/s/$/\'\'\'/" -e "/#/s/#/\'\'\'/" server.py
"/#/s/$/\'\'\'/ 先匹配#,在整行的末尾添加 ‘’‘,
"/#/s/#/\'\'\'/" 将#再替换成 ’‘’。
sed 不常用的话,很不好记。baidu了好久才又一次弄明白咋用:
command 格式这样记比较好记:
/ / 用来分割要匹配的模式或者命令
比如 /#/s/$/\'\'\'/
第一个#是匹配带有#的行(可以为模式 比如说^ $ [] 正则表达式等 ),第二个s是替换命令,第三个是要替换的字符串,第四个是要替换成的字符串
再比如说,我要删除从匹配的行,到最后一行
sed '/^host/,$d' a.txt # 匹配从host开始的哪一行,一直到最后一行$, 将其删除
可以理解为
sed {line1,line2}d a.txt #删除一个区间