grep El modo predeterminado es (iirc) POSIX regex, y \d es pcre. Puedes pasar -P a gnu grep, para expresiones regulares similares a perl, o use [[:digit:]] en lugar de \d .
[email protected] ~ $ echo 1 | grep -P '\d'
1
[email protected] ~ $ echo 1 | grep '[[:digit:]]'
1
Prueba esto $ echo 'this 1 2 3' | grep '[0-9]\+'