
Когда я запускаю эту команду:
apt install libkf5*
Я получаю следующую ошибку:
Unable to locate package libkf5*
Я уверен, что пакеты, имена которых начинаются с libkf5
существуют (табуляция говорит об этом). Так что проблема не в отсутствии этих пакетов. (Обратите внимание на звездочку в конце сообщения об ошибке, подстановочный знак вообще не работает).
Я использую apt
v.1.9.
Заранее спасибо.
решение1
Последние версииapt
изменился способ указания шаблонов, и apt
больше не поддерживает регулярные выражения напрямую или подстановочные знаки, за исключением *
тех, для которых поддержка былавосстановлено в 2.1.0иперенесено на версию 2.0.3.
Теперь вам следует использовать
apt install '~nlibkf5.*'
с apt между 1.9.9 и 2.0.2, или длинная форма
apt install '?name(libkf5.*)'
доступно немного раньше.
Видетьapt-patterns
страница руководства( man apt-patterns
) для получения подробной информации.
решение2
apt-get
Для этой цели по-прежнему можно использовать обычную краску .
Для примера ОП это будет выглядеть так
sudo apt-get install "libkf5*"
решение3
Согласно списку изменений apt,версия 2.1.0:
* Reinstate * wildcards (Closes: #953531) (LP: #1872200)
(Ссылка: Launchpad#1872200)
Звездочка (и только звездочка) восстановлена для всех apt
подкоманд, включая apt install
.
Хотя версия 2.1.0 слишком нова для поставки в Focal, она была перенесена на2.0.3который доступен в focal-proposed
репозитории. Вы можете обратиться кУбунту Викидля включения предлагаемого репозитория, а затем вы можете установить apt 2.0.3, в котором эта функция уже портирована.
Посмотреть на себя:
Примечание: Возможно, вам захочется прочитатьЧто такое «предлагаемый» репозиторий?прежде чем приступить к работе с предлагаемым репозиторием.
решение4
Я нашел небольшой трюк, который можно использовать apt
с подстановочным знаком. Нам просто нужно сделать псевдоним apt
с apt-get
, но этот метод не работает, потому что псевдонимы не передаются в sudo
. Чтобы обойти эту проблему, вы можете добавить второй псевдоним для sudo
в свой .bashrc
файл:
alias sudo='sudo ' # whitespace is important
alias apt='apt-get'
Кредиты: