Почему Ubuntu занимает так много времени, чтобы сказать & ldquo; команда не найдена & rdquo;

По какой-то причине, с моей настройкой, Ubuntu может потребоваться несколько секунд, чтобы ответить «команда не найдена», когда я случайно набрал команду. Почему это так долго? Есть ли способ сократить время ожидания?

У меня есть 13 каталогов в моей переменной PATH, но даже в этом случае (в большинстве из них всего несколько файлов), это не должно займет несколько секунд, чтобы найти 13 каталогов для команды, верно?

24
задан 25 April 2014 в 18:28

2 ответа

Это из-за пакета с именем «command-not-found». Вы можете удалить его, чтобы сократить время отклика.

0
ответ дан 25 April 2014 в 18:28

Оболочка делает больше, чем просто смотрит в $PATH. Если команда не найдена, выполняется функция bash command_not_found_handle, которая в свою очередь вызывает скрипт python /usr/lib/command-not-found. В списке пакетов выполняется поиск программ, которые должны быть установлены для работы команды. В случае опечатки, которую вы знаете, как решить, просто нажмите Ctrl + C , чтобы прервать процесс поиска.

Пример полезного сообщения для опечатки:

$ aptget update
No command 'aptget' found, did you mean:
 Command 'apt-get' from package 'apt' (main)
aptget: command not found

Пример полезного сообщения для отсутствующего пакета:

$ deja-dup
The program 'deja-dup' is currently not installed.  You can install it by typing:
sudo apt-get install deja-dup

См. Также обоснование этого, https://wiki.ubuntu.com/CommandNotFoundMagic

0
ответ дан 25 April 2014 в 18:28

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

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