工作中需要用bash的地方不是很多,之前只是大致了解过,每每用到都得去网上查询,遂决定以后将所用到的正则用法在这里统一收藏,便于学习。
1、echo 'inet addr:10.1.1.1 Bcast:10.2.1.1 Mask:255.255.255.0'|sed -n 's/^.*addr:(10.*) [[:space:]]Bcast:.*$/1/p'
结果:10.1.1.1
参考:
http://lht821008.blog.163.com/blog/static/41647862011042735914/
* http://coolshell.cn/articles/9104.html
http://qujunorz.blog.51cto.com/6378776/1380657
点记:
‘/’:在regular expression前后必须加上“/”.例如指令为/t.*t/d,表示删除所有含两”t“的资料行。其中”.”表示任意字元;“*”表示其前字元可重任意此;
'':由于在正则表达式中“”、”?等字符已经具有某一特定意义,如果需要用它们的原始意义,则应该对它进行转义,例如希望在字符串中至少有一个“”,那么正则表达式应该这么写:\+