Quando você usa asteriscos na linha de comando, eles são expandidos pelo seu shell antes de serem passados para o aplicativo. Se esse asterisco se expandir para mais de 100 arquivos, você estará passando mais de 100 argumentos para o aplicativo. Não é um problema passar muitos argumentos, mas o seu bash tem um limite de 500.000.
Como você já está usando -r
(recursiva) é possível reescrever a chamada para o grep para especificar apenas o diretório em que você deseja procurar?
# recursive
grep -R <options> <pattern> <directory>
Por exemplo, no seu caso, você poderia:
grep -wirnE \
'Wed Oct 19 2(1:[0-5][0-9]:[0-5][0-9]|2:([0-2][0-9]:[0-5][0-9]|30:00)) .* 2016' .
( *
foi alterado para .
).
Dessa forma, em vez de o grep receber uma lista de centenas de milhares de arquivos, ele recebe apenas um diretório e usa seu processamento recursivo para localizar os arquivos em si.