Рассматривать:
$ time lzop -d < tvtropes-index.lzo | egrep -B 5 '[Dd][eE][sS][cC][eE][nN][dD] ?[Ff][rR][oO][mM]'
real 0m0.438s
$ time lzop -d < tvtropes-index.lzo | egrep -B 5 'descend ?from' -i
real 0m11.294s
Оба поиска регистрозависимы. Почему версия -i
такая медленная? Как сделать grep -i
быстрым, не вводя такие вещи, как [iI] [nN] [tT] [hH] [iI] [sS] [wW] [aA] [Yy]?
Например,
perl -ne 'print if /descend ?from/i'
работает быстро, но '-B 5' не так тривиально для реализации, как в grep (как и другие опции).