Isso é um módulo Z Shell conhecido como "url- quote-magic " em ação. Está tentando garantir que você acabe com o que você pretendia, mesmo que tenha ignorado completamente os metacaracteres e as citações do shell. Ele detecta quando (em ZLE) uma palavra sem aspas se parece com uma URL, com um esquema na frente, e muda a maneira como a auto-inserção de caracteres acontece com o resto da palavra.
Se a operação de colar tivesse simplesmente entrado
http://example.com/?a=cno editor de linha de comando, você teria acabado com um comando que quando executado teria tentado executar expansão de nome de arquivo e falha ao executar porque nenhum nome de arquivo correspondido . Um exemplo bem conhecido por Vivek Verma é:
~$ mpv https://www.youtube.com/watch?v=HcgJRQWxKnw zsh: no matches found: https://www.youtube.com/watch?v=HcgJRQWxKnw ~$
Lembre-se: o Z Shell possui muitos caracteres de expansão de nome de arquivo, incluindo não apenas ?
, [
, ]
e *
; mas também =
(pesquisa de nome de comando), <
e >
(intervalos de números), ~
, ^
e #
. E isso nem inclui os mecanismos de compatibilidade do shell Korn. Veja a zshexpn página de manual para os detalhes bastante longos.
A url-quote-magic determinou que essa não era uma palavra citada, reconheceu o prefixo http:
schema e alterou o ?
e o =
para \?
e \=
para que eles não o fizessem invocar expansão de nome de arquivo.
Então, a menos que você realmente queira , por algum motivo, os URLs que você colou ou digitou (sem adicionar nenhuma aspas, observação) ficarão sujeitos a todas as expansões de nomes de arquivos e ou não funcionar ou (no raro caso de surpresa extrema) produzir correspondências inesperadas, provavelmente você deve ficar feliz em saber que essa cotação automática de metacaracteres de shell no que você claramente considera como URLs está sendo feita para você. ☺