grep中的正则表达式

照抄的这里

正则表达式

  • 基础正则,basic regex,即bres
  • 扩展正则,extended regex,即eres
  • perl的正则,perl regex,即pres

不同正则表达式的区别

  • bres需要多写转义
1
2
\{n,m\}, x\|y #bres需要写转义,
{n,m}, x|y #而eres和pres不需要
  • pres可以用下面这些,其它两种不可以。
1
\d, \D, \S, \s

grep

  • 默认的正则为基础正则,”-E”表示eres,”-P”表示pers.
  • egrep等效于grep -E,egrep -P等效于 grep -P

sed

  • 默认是eres,-r表示要用eres,不支持pres
  • mac下到sed和linux还不太一样,写inplace替换要这样,其中,-i后面是
1
sed -i '' 's/http.*ot0uaqt93.bkt.*\//\/images\//g' `ls *.md`

awk

  • 厉害了,只支持eres