В нашем университете мы можем установить практически любой пакет ubuntu, какой захотим, но мы сами не являемся суперпользователями (нам нужно запросить установку пакетов).
С некоторыми библиотеками не всегда легко узнать, установлен ли пакет или нет. Есть ли простой способ / команда, чтобы проверить это?
package-management
Питер Смит
источник
источник
dpkg -s
делает однако: askubuntu.com/a/1108801/52975apt
:apt policy <package name>
илиapt show <package name>
для получения дополнительной информации.Я всегда просто использую это из командной строки:
поэтому приведенный выше запрос dpkg перечисляет все установленные пакеты, а затем я выполняю grep только для тех, которые имеют mysql в имени.
источник
dpkg -l "*mysql*"
также работает и не скрывает поясняющие строки в выводе.dpkg -l "*mysql*"
(илиdpkg -l '*mysql*'
) также делает специальное форматирование вывода, чтобы соответствовать каждому пакету в одной строке окна терминала (grep не делает). И эта форма позволяет вам выбрать формат подстановочного знака (префиксы или суффиксы), а также использовать ли подстановочные знаки вообще (по сравнению с grep). Но grep дает приятную раскраску ..))Еще один вариант, использующий aptitude на этот раз:
Здесь также работает завершение табуляции.
источник
Вы можете использовать dselect. Он обеспечивает доступ не только для чтения.
Кроме того,
dpkg -s <package name>
предоставляет много деталей, связанных с пакетом. Например"источник
dpkg -s
. И наоборот,dpkg-query -l
работает так же хорошо, какdpkg -l
илиdpkg --list
Вы можете использовать
dpkg-query -s <package> 2>/dev/null | grep -q ^"Status: install ok installed"$
в скриптах, так как он возвращает код выхода 1, если<package>
он не установлен, и 0, если<package>
он установлен.источник
dpkg -s
возвращается0
, это не обязательно означает, что пакет установлен полностью / правильно .dpkg -s
также возвращает,0
если пакет вhalf-configured
или вconfig-files
состоянии (и я думаю, также вhalf-installed
, но я не проверял это). Смотрите [man-страницуdpkg
( manpages.ubuntu.com/manpages/oneiric/man1/dpkg.1.html ) для дальнейших «неполных» состояний.Более простое решение:
Теперь есть
apt list
команда, которая выводит список установленных пакетов. Вы также можете искать конкретный пакет сСмотрите
man apt
для получения дополнительной информации.источник
apt show
для более детальнойdpkg -s
программное использованиеМне нравится,
dpkg -s
как он выходит со статусом,1
если какой-либо из пакетов не установлен, что облегчает его автоматизацию:Смотрите также:
Проверено на Ubuntu 18.10.
источник
Пример использования определенного значения как var в скриптах оболочки (например
test.sh
)Сделайте его исполняемым и начните с:
Или делай что хочешь в своих скриптах
источник
Вам необходимо проверить статус, напечатанный
dpkg -l
, например:Здесь и так
vim
иfirefox-esr
установлены, поэтому вы можете набрать:источник