Итак, когда команда не найдена, каким образом заполняется список «Вы имели в виду:»? Какая программа находит эти альтернативные команды? Что означает: «(главное), (вселенная) ...»? Могу ли я изменить, какая программа находит это?
7
Итак, когда команда не найдена, каким образом заполняется список «Вы имели в виду:»? Какая программа находит эти альтернативные команды? Что означает: «(главное), (вселенная) ...»? Могу ли я изменить, какая программа находит это?
Ответы:
Если вы посмотрите на его содержимое
/etc/apt/sources.list
будет иметь форматТип архива
Первое слово в каждой строке, deb или deb-src, указывает тип архива. Deb указывает, что архив содержит двоичные пакеты (deb) и т. Д.
URL репозитория
Следующая запись в строке - это URL-адрес хранилища, из которого вы хотите загрузить пакеты.
распределение
«Дистрибутивом» может быть либо кодовое имя релиза / псевдоним (wheezy, jessie, stretch, sid), либо класс релиза (oldstable, stable, testing, unstable) соответственно.
Составная часть
main состоит из пакетов, совместимых с DFSG, пакеты contrib содержат программное обеспечение, совместимое с DFSG, но имеют зависимости, не относящиеся к main, несвободные содержат программное обеспечение, которое не соответствует DFSG и т. д. Совет: проверьте один из URL-адресов хранилища, в нем должна быть папка с именем компонента.
Менеджеры пакетов говорят,
apt
что у них будет база данных, которая содержит список всех пакетов в репозиториях, и она достаточно умна, чтобы давать вам предложения.Ваш менеджер пакетов может быть на eof dpkg (например, Debian, Ubuntu и т. Д.), Apt (например, Debian, Ubuntu и т. Д.), Теперь устарел rpm (например, старые версии Redhat и более новые не запускают его по причинам совместимости), yum (например, . Fedora, CentOS), dnf - дентрифицированная ням (например, новые выпуски Fedora) и так далее. Для более полного списка проверьте это . Вы можете даже увидеть несколько менеджеров пакетов в одном дистрибутиве. Например, в Ubuntu вы можете увидеть dpkg, который кормит / etc / apt / sources / list.
Поэтому, когда вы печатаете
Это может сказать
Это включает в себя сопоставление с образцами пакетов в вашей базе данных менеджера пакетов.
Эта база данных обновляется, когда вы делаете
apt-get update
Не уверен насчет
хоть. Я считаю, что это особенность, которую нельзя изменить. Хотя не уверен
Ссылка : исходный список Debian
источник
/etc/apt
. См. Редактирование. Ну, в общем, вы можете сказать, что ваш менеджер пакетов поддерживает этот список для вас, и вы можете использовать apt менеджера пакетов (в случае Debian, Ubuntu и т. Д.), Rpm (Redhat и его клоны), yum (например, Fedora , CentOS) и dnf (новые выпуски Fedora)Ведь
bash
его поведение определяется функцией оболочкиcommand_not_found_handle
(см.man bash
).Чтобы увидеть, какое поведение определяется этой функцией, вы можете выполнить:
Вы можете изменить используемую программу, переопределив
command_not_found_handle
функцию.В дистрибутивах на основе Debian (включая Ubuntu) пакет
command-not-found
обычно устанавливается и доступен как/usr/lib/command-not-found
по ссылке:Смотрите также:
man
страница дляbash
, особенно КОМАНДА ИСПОЛНЕНИЯ/usr/share/doc/command-not-found/README
(из пакета Debian)источник
Это не стандартная особенность оболочек Linux. Есть как минимум две возможности:
zsh
поддерживает свой собственный список предложенийthefuck
предлагает еще одинисточник