A opção -w do grep é para casar uma regex baseado em palavras por cada linha e o traço funciona como um limite da palavra, assim como o espaço. Esse problema vc teria tb usando borda (\b) numa regex.
Mas se precisar casar a linha inteira, que é o que parece que vc quer, pode usar a opção -x ao invés de -w.