grep -E '\b6\b'
\b
é um "limite de palavras"
Editar: Depois de apontar @nobar na direção correta, ele encontrou / apontou a opção de atalho -w
(palavra-regexp) na manpage, o que simplifica o acima para:
grep -w 6
Se usado muito, você poderia usar uma função similar a
wgrp(){ grep -w "$1" "$2"; }
Nota (para @glenn-jackman): Se você não citar "$2"
aqui, você pode usar a função como um filtro de pipeline. Mas sim, então não funcionará com nomes de arquivos com espaços.
Depois de ler mais uma ótima resposta do @Gilles, agora proponho
igrp(){ grep -E "(^|[^0-9])$1($|[^0-9])" "$2"; }