Como uso o recurso “você quis dizer” no Ubuntu?

5

Se eu digitar errado um comando no shell do Ubuntu, ele oferece uma sugestão. Muitas vezes, a sugestão está certa e desejo usá-la. Mas não há como repetir o último comando e fazer as alterações por conta própria. Por que não oferece uma sugestão do tipo sim / não, em que você pode simplesmente digitar y para aceitar a sugestão? Alguma sugestão para permitir tal comportamento?

Veja o que acontece:

sumeet@sumeet:/media/tux$ git stastus
git: 'stastus' is not a git command. See 'git --help'.

Did you mean this?
    status
sumeet@sumeet:/media/tux$
    
por elexhobby 14.10.2013 / 18:35

3 respostas

5

A sugestão do seu exemplo não é fornecida pelo shell do Ubuntu , mas faz parte do recurso help.autocorrect embutido no próprio Git. / p>

Houve discussão no ano passado de adicionar um prompt "sim / não" interativo ao Git, mas alguns detalhes nunca foram decididos para que o trabalho ainda esteja incompleto.

Se você está procurando algo para fazer este tipo de sugestão para qualquer comando, você pode tentar usando o shell Z (zsh) em vez do Bash . Ele oferece correção ortográfica de propósito geral para comandos e nomes de arquivos e fornece um prompt interativo:

$ ehco hello > test.txt
zsh: correct 'ehco' to 'echo' [nyae]? y
$ cat tesst.txt
zsh: correct 'tesst.txt' to 'test.txt' [nyae]? y
hello

Mudar shells não é algo que leve em consideração. Ao usar qualquer shell não-padrão, você provavelmente encontrará alguns obstáculos na estrada que exigirão tempo e esforço para resolver.

    
por ændrük 14.10.2013 / 20:50
1

A maioria dos shells do Linux permite que você use a tecla de seta para cima para rolar a lista de comandos que você digitou recentemente, então você pode editá-la antes de pressionar Enter para executar a linha recém-modificada.

Para o Ubuntu, o shell de terminal padrão é o Bash, que suporta isso de forma muito eficaz.

    
por Raceimaztion 14.10.2013 / 19:09
0

Isto parece ser algo fornecido pelo próprio comando git:

asb@asb-laptop:~$ git stastus
git: 'stastus' is not a git command. See 'git --help'.

Did you mean this?
    status
asb@asb-laptop:~$ svn stastus
Unknown command: 'stastus'
Type 'svn help' for usage.

Embora o Ubuntu instale command-not-found por padrão. Ele fornece sugestões para comandos digitados incorretamente ou desinstalados:

asb@asb-laptop:~$ foo
No command 'foo' found, did you mean:
 Command 'zoo' from package 'zoo' (universe)
 Command 'goo' from package 'goo' (universe)
 Command 'xoo' from package 'xoo' (universe)
 Command 'fio' from package 'fio' (universe)
 Command 'fop' from package 'fop' (main)
 Command 'fgo' from package 'fgo' (universe)
 Command 'fox' from package 'objcryst-fox' (universe)
 Command 'fog' from package 'ruby-fog' (universe)
foo: command not found
    
por andrewsomething 14.10.2013 / 19:23