![¿Desactivar completamente? y [] globbing en zsh](https://rvso.com/image/1638102/%C2%BFDesactivar%20completamente%3F%20y%20%5B%5D%20globbing%20en%20zsh.png)
zsh agrega algo de lógica global adicional sobre bash:
$ zsh
$ echo foo[]
zsh: no matches found: foo[]
$ echo bar?
zsh: no matches found: bar?
$ bash
$ echo f[]
f[]
$ echo bar?
bar?
Ninguno de estos es útil para mí y hace que copiar/escribir URL y otros sea molesto.
Me gustaría desactivar esto por completo, pero todavía no he encontrado ninguna forma de hacerlo.
Hay algunas soluciones imperfectas:
setopt NO_NOMATCH
Esto funciona principalmente, a menos que su pegote accidentalmentehacepartido, como:
$ echo README.m?
README.md
- Agregar cotizaciones
Esto funciona, pero no funciona para copiar y pegar fragmentos en línea y agrega un paso adicional que debo recordar al escribir.
- Usar
url-quote-magic
para escapar automáticamente
Esto contamina la CLI/el historial y solo funciona para pegar
Respuesta1
?
También es un comodín en Bash.. La diferencia que estás viendo ocurre porque en Zsh, una coincidencia fallida genera un error, mientras que en Bash, se ignora silenciosamente.
Para obtener el comportamiento de Bash en Zsh, agregue esto a su ~/.zshrc
archivo:
unsetopt NOMATCH
Sin embargo, realmente recomendaríanoapagándolo. Ignorar errores en silencio no es algo bueno e incluso puede resultar peligroso al realizar operaciones destructivas.
Para obtener más información sobre esta opción de shell, consultehttp://zsh.sourceforge.net/Doc/Release/Options.html