Seu comando está correto - algo parece errado com seu ambiente
$ echo 'dog eat dog' > dog
$ grep 'd' dog
dog eat dog
Sua mensagem de erro sugere que está considerando "grep: d:" como um comando e não "grep". A outra possibilidade é que você não tenha grep no caminho. Experimente:
which grep
Para descobrir onde o grep está instalado. Tente também um comando não existente como o grepx (que não existe) para verificar sua mensagem de erro:
$ grepx 'd' dog
-bash: grepx: command not found