O que o cursor faz em zsh?

6

O que o caret ^ faz no zsh? echo ^ lista os arquivos no diretório atual, como ls . Eu uso grml .

Aparentemente, não é um alias e which ^ imprime o mesmo que which $(ls) . Também command -v ^ não imprime nada e retorna 1.

Posso supor que ^ se comporta como uma variável contendo arquivos no diretório atual?

    
por pasbi 04.04.2017 / 23:27

1 resposta

7
$ PS1='%% ' zsh -f
% print ^
^
% setopt EXTENDED_GLOB
% print ^
...
% 

Portanto, você deve ter EXTENDED_GLOB ativado e, portanto, o ^ é um glob, então, depois de cavar zshexpn(1) , encontramos

   ^x     (Requires EXTENDED_GLOB to be set.)  Matches anything except the
          pattern x.  This has a higher precedence than '/', so '^foo/bar'
          will  search  directories in '.' except './foo' for a file named
          'bar'.

Então "tudo exceto x" corresponde a tudo, já que você não excluiu nada com um x em branco.

    
por 04.04.2017 / 23:40

Tags