Как использовать & ldquo; Вы имели в виду & rdquo; особенность в Ubuntu?

Если я неправильно наберу команду в оболочке Ubuntu, она предложит подсказку. Часто предложение верно, и я хочу его использовать. Но нет другого способа, кроме как повторить последнюю команду и внести изменения самостоятельно. Почему он не предлагает предложение типа да / нет, где вы можете просто ввести y, чтобы принять предложение? Какие-либо предложения, чтобы включить такое поведение?

Вот что происходит:

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$
6
задан 14 October 2013 в 20:35

3 ответа

Большинство оболочек Linux позволяют вам использовать клавишу со стрелкой вверх, чтобы прокручивать список недавно набранных вами команд, затем вы можете отредактировать его перед нажатием Enter, чтобы запустить вновь измененную строку.

Для Ubuntu терминальной оболочкой по умолчанию является Bash, которая очень эффективно это поддерживает.

0
ответ дан 14 October 2013 в 20:35

Предложение в вашем примере не предоставлено оболочкой Ubuntu , а скорее является частью функции help.autocorrect , встроенной в сам Git.

В прошлом году было обсуждение добавления интерактивной подсказки «да / нет» в Git, но некоторые детали никогда не были решены, так что работа все еще не завершена.

Если вы ищете что-то, чтобы сделать такое предложение для любой команды, вы можете попробовать использовать оболочку Z (zsh) вместо Bash . Он предлагает исправление орфографии общего назначения как для команд, так и для имен файлов, и предоставляет интерактивную подсказку:

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

Изменение оболочек не так уж легко. Используя любую нестандартную оболочку, вы, вероятно, столкнетесь с несколькими препятствиями, для решения которых потребуется время и усилия.

0
ответ дан 14 October 2013 в 20:35

Похоже, это обеспечивается самой командой 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.

Хотя Ubuntu по умолчанию устанавливает command-not-found. В нем содержатся предложения по ошибочным или неустановленным командам:

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
0
ответ дан 14 October 2013 в 20:35

Другие вопросы по тегам:

Похожие вопросы: