Faça isso:
set > /tmp/zshset
Em seguida, abra /tmp/zshset
no seu editor favorito. Procure por IFS
.
O valor padrão para isso, pela página zshparam
man, é espaço padrão, tabulação, nova linha e NUL. Este último está causando o problema. grep
vê o NUL (ascii 0, exibido frequentemente como ^@
) e pensa que este é um arquivo binário.
Soluções possíveis:
- Defina o IFS para algum outro valor. Isso pode causar problemas se alguma outra coisa você espera que o NUL seja um delimitador válido.
- Use
grep -a
como sugerido por KeithB (ou seu equivalente--binary-files=text
) - Crie um novo alias para você mesmo que use
grep -a
para economizar um pouco de digitação - Adapte-se a analisar seu PATH por outros meios (por exemplo,
env | grep -i path
,echo $PATH
) - acho que as outras soluções são mais simples