grep с регулярным выражением: пробелы не совпадают, если я не добавлю утверждение

GNU grep 2.5.4 на bash 4.1.5 (1) на Ubuntu 10.04

Это соответствует

$ echo "this is a     line" | grep 'a[[:space:]]\+line'
this is a     line

Но это не

$ echo "this is a     line" | grep 'a\s\+line'

Но это тоже соответствует

$ echo "this is a     line" | grep 'a\s\+\bline'
this is a     line

Я не понимаю, почему № 2 не совпадает (тогда как № 1 совпадает), а № 3 также показывает совпадение. В чем разница?

9
задан Owen Blacker 6 February 2012 в 07:40
поделиться