Fish-shell: Comando `ocasional: opção desconhecida“ -q ”`

Criado em 14 fev. 2017  ·  3Comentários  ·  Fonte: fish-shell/fish-shell

  • [x] Você verificou se o problema ocorre com o fish 2.5.0 ?
  • [] Experimentou peixes sem personalizações de terceiros (verifique sh -c 'env HOME=$(mktemp -d) fish' ) ?

versão fish instalada ( fish --version ) :

2.5.0

SO / terminal usado :

Arch linux. URxvt

Depois de usar a sessão de shell de peixe por um tempo, ele entra em um estado em que command built in falha sempre que a opção -q é usada. Isso pode ser notado cancelando a linha de comando (que chama command -sq ).

ogondza<strong i="24">@arch</strong> ~ $ date
2017-02-14 15:01:20
# Up and Ctrl + C
ogondza<strong i="25">@arch</strong> ~ $ datecommand: Unknown option “-sq”
/usr/share/fish/functions/__fish_cancel_commandline.fish (line 12):         if command -sq tput
                                                                               ^
in function “__fish_cancel_commandline”
    called on standard input


       command -- run a program

   Synopsis
       command [OPTIONS] COMMANDNAME [ARGS...]

   Description
       ...
       Additionally passing a -q or --quiet option prevents any paths from
       being printed, like the type -q, for testing only the exit status.
       ...

Isso pode ser reproduzido facilmente quando o peixe entra neste estado usando:

ogondza<strong i="29">@arch</strong> ~ $ type command
command is a builtin
ogondza<strong i="30">@arch</strong> ~ $ command -s test
/usr/bin/test
ogondza<strong i="31">@arch</strong> ~ $ command -s -q test
command: Unknown option “-q”
...

O problema não se manifesta em uma nova sessão de peixe e não sei o que desencadeia esse comportamento. Como posso depurar isso ainda mais?

question

Todos 3 comentários

Esta opção foi adicionada por meio do # 3591 e está incluída na versão 2.5.0.

A causa mais provável é que você está executando um fish antigo que carrega nos scripts mais novos - echo $FISH_VERSION deve confirmar isso. A solução é parar de fazer isso.

Edit: O que quero dizer é que isso deve ser esclarecido assim que você sair das instâncias antigas e iniciar as novas. Por exemplo, isso deve desaparecer completamente após a reinicialização.

ogondza<strong i="5">@arch</strong> ~ $ fish -version
fish, version 2.5.0
ogondza<strong i="6">@arch</strong> ~ $ echo $FISH_VERSION 
2.4.0

Parece que esse é o problema. Obrigado.

Vamos mover o resumo para FAQ ou Wiki.
Isso só me incomodou depois da atualização de 2.4.0 para 2.6.0.

Esta página foi útil?
0 / 5 - 0 avaliações