Я заметил на других машинах Ubuntu, когда у Вас нет Знатока, и Вы пробуете mvn
это говорит Вам устанавливать maven
или maven2
. Этого не происходит на моем xfce, как я включаю его?
Пакет, соответственно, называется command-not-found
. Интеграция с bash
для этого пакета является частью самого пакета bash
, и если вы не изменили /etc/bash.bashrc
, он должен работать, если у вас установлен этот пакет.
Если вы используете zsh, добавьте к /etc/zshrc
:
. /etc/zsh_command_not_found
ответ muru является правильным, что пакет называют command-not-found
. Это в основном обеспечивает a python
сценарий /usr/lib/command-not-found
это на самом деле делает основное задание.
Но сообщения, что Вы входите в Ubuntu, на самом деле определяются функцией, которая на самом деле использует command-not-found
свойства. Его названный command_not_found_handle
и находится в /etc/bash.bashrc
.
$ type -a command_not_found_handle
command_not_found_handle is a function
command_not_found_handle ()
{
if [ -x /usr/lib/command-not-found ]; then
/usr/lib/command-not-found -- "$1";
return $?;
else
if [ -x /usr/share/command-not-found/command-not-found ]; then
/usr/share/command-not-found/command-not-found -- "$1";
return $?;
else
printf "%s: command not found\n" "$1" 1>&2;
return 127;
fi;
fi
}
Из-за вышеупомянутой функции мы получаем различные сообщения об ошибках в различных случаях:
$ svn
The program 'svn' is currently not installed. You can install it by typing:
sudo apt-get install subversion
$ foobar
foobar: command not found
Позволяет проверке:
$ /usr/lib/command-not-found svn
The program 'svn' is currently not installed. You can install it by typing:
sudo apt-get install subversion
$ /usr/lib/command-not-found foobar
foobar: command not found
Поскольку Вы не имеете command-not-found
пакет включил, Вы в основном удовлетворяете следующий отрывок command_not_found_handle
функция каждый раз:
printf "%s: command not found\n" "$1" 1>&2;
return 127;
Следовательно Вы получаете следующий каждый раз:
$ svn
svn: command not found
$ foobar
foobar: command not found
Короче говоря можно установить command-not-found
пакет и затем добавляет, что функция (если не там уже) упомянула выше в файл /etc/bash.bashrc
(для всех пользователей) или ~/.bashrc
(для только Вас).