跳至主要内容

linux 下sed命令 及 正则表达式相关

 

正则表达式复杂!


sed -i 's/^#\(.*helloworld\)/\1/' feeds.conf.default

依次解析:

-i 直接修改读取的文件内容,而不是输出到终端

/ :  ~ 开始匹配搜索

^##号开头的行

\(.*helloworld\)格式为(XXXXhelloworld)的行, XXXX的长度不限

/:  ~  开始处理

\1: ~~~猜测是前面匹配的串

/:  ~ 结束了

实测结果:

$ cat tt11

,(fdsa helloworld) 001

#$fdsa helloworld) 002

#(fdsa felloworld) 003

#(fdsa helloworld* 004

#(fdsa helloworld) 005

#(fdsa helloworld) end!

$ sed -i 's/^#\(.*helloworld\)/\1/' tt11

预期: 001行不变, 002-004行不变, 005#号被删除

$ cat tt11

,(fdsa helloworld) 001

$fdsa helloworld) 002

#(fdsa felloworld) 003

(fdsa helloworld* 004

(fdsa helloworld) 005

(fdsa helloworld) end!

实际

001不变(未匹配#号开头)

002 #号被删除(未匹配左括号)

003 不变(未匹配helloworld)

004 #号被删除(未匹配右括号)

005 #号被删除(完全匹配)

006 #号被删除(完全匹配)

解析:

左右括号不是匹配条件可能只是标注条件?

\1: 应该是修改后原串?

注: 这个命令原意应该是去掉符合条件的行前面的#号注释符。



参考:


在线正则表达式测试链接

linux sed命令详解链接

linuxsed正则表达式匹配批量替换文件中的内容链接

正则表达式 语法链接

评论

此博客中的热门博文

(migrated)联通(数码视讯)Q7电视盒子刷机成功, 但这Q7盒子是真的垃圾!

 一、破解方式       联通(数码视讯)Q7(以下简称Q7)有很多种破解方式:          a. 不拆机破解: 主要通过漏洞是装上可以装App的市场或其他工具          b. TTL破解: 连接TTL线,通过进入底层系统打开adb调试, 再通过其它工具安装App, 如:                        “北京联通盒子-数码视讯Q7-破解"             或者在底层的Linux系统里直接安装App.         c. 使用USB Burn方式刷机: 直接刷成别的系统,如:                   " 【2020年11月】北京联通数码视讯Q7破解教程"                          最后用的是这种方式进行刷机 。          相关的包下载地址:          1) 刷机固件:             链接: https://pan.baidu.com/s/18ukQVyQiScAeQPCReoBr0Q                    提取码:yp6t             里面有个压缩包: 20191218-Q7-4.4.2-root-twrp-...

(migrated)关于电视盒子刷机的好贴收集

  1.  折腾电视盒子 2.在斐讯N1盒子上刷入Linux系统代替树莓派做小型服务器       https://zhuanlan.zhihu.com/p/38456769 3. R3300L运行CoreELEC, EmuELEC和Armbian 4. 百视通R3300L刷写固件及EMUELEC         百视通R3300L刷写固件及EMUELEC

(migrated)在美国租车

2017.6.9   使用中国驾照可以开车的州,以及证件有效性   持中国驾照可以在美国大部分州短期内合法驾车,但有少部分州是不可以持中国驾照开车,其中包括肯塔基州、麻萨诸塞州、密歇根州、新泽西州、俄亥俄州、德克萨斯州、佛蒙特州、威斯康辛州等,大多数都位于美国东北部。   下面这个文档是我找到的最详细的相关说明文档:      中国驾照在美国开车的规定(官方文件)   在上述这些州里,你可能因为租车公司员工不清楚法律规定而拿到车,但万一碰上警察就可能遇上麻烦。   如果只是路上要经过其中某个州,而不方便绕过的话,那就小心点开车,也别招警察注意,因为在这段路程中,不仅不合法,可能租车相关的保险也是无效的。   持中国驾照,在美国租车最好携带翻译件,这样租车公司员工能看明白驾照上写的是什么。携程上有各租车公司的翻译件模板,照着做一个就ok。        携程翻译件模板下地址如下:      免费驾照翻译件下载     翻译件必须和驾照原件一起使用。   在美国开车不需要什么驾照公证件,租车公司就不知道这么个东西,你给他公证件,他就当个翻译件来用。   所谓的国际驾照(IDP)对仅持有中国驾照的人而言是完全无效的,中国没有加入联合国道路交通公约,不能颁发国际驾照。这个骗局十多年前就看到了,到现在还在继续。   如果你想拿到有效的IDP,你可以通过拿到加入到相关公约国家的驾照,比如韩国,并使用该国有效驾照申请IDP。   IDP有效期应该是一年,需要和相应的驾照一起使用才有效。 交通规则    这个先不写了,网上好多。 第三方保险    租车公司提供的车损险是有免责条款的,比如车顶、车底、玻璃等是不在保险覆盖范围内的,在详细的合同条款里应该会有,我记得在某一家租车公司的文档里看到过,另外还问过Hertz中国的客服并得到确认。   虽然大部分公司不会拿这些损伤说事,比如去年在路易斯安娜州租的车,就被前面卡车掉落的石子把前挡砸出了一个小坑,最终还车也没从信用卡里另外收钱(当时有买车损险),但万一有事真搬出这条款出来你也没办法。        第三方保险有车损险,而且包括了这些租车公司不保的...