Dans notre université, nous pouvons installer presque tous les paquets ubuntu que nous voulons, mais nous ne sommes pas nous-mêmes des super-utilisateurs (nous devons demander que des paquets soient installés).
Avec certaines bibliothèques, il n'est pas toujours facile de savoir si le paquet est déjà installé ou non. Y at-il un moyen simple / commande pour vérifier cela?
package-management
Peter Smit
la source
la source
dpkg -s
fait cependant: askubuntu.com/a/1108801/52975apt
:apt policy <package name>
ouapt show <package name>
pour plus d'informations.Je l'utilise toujours depuis la ligne de commande:
Donc, ce qui précède demande à dpkg de lister tous les paquets installés, puis de grep uniquement pour ceux qui ont mysql dans le nom.
la source
dpkg -l "*mysql*"
fonctionne également et ne masque pas les lignes explicatives dans la sortie.dpkg -l "*mysql*"
(oudpkg -l '*mysql*'
) effectue également un formatage spécial de la sortie pour qu'il s'adapte à chaque paquet sur une ligne de la fenêtre du terminal (grep non). Et ce formulaire vous permet de choisir le format des caractères génériques (préfixes ou suffixes) et de choisir d’utiliser des caractères génériques (par rapport à grep). Mais grep donne une belle coloration ..))Encore une variante, en utilisant aptitude cette fois-ci:
La complétion par tabulation fonctionne ici aussi.
la source
Vous pouvez utiliser dselect. Il fournit un accès en lecture seule non-su.
En outre,
dpkg -s <package name>
fournit beaucoup de détails liés à un paquet. Par exemple"la source
dpkg -s
. Et inversement,dpkg-query -l
fonctionne aussi biendpkg -l
ou oudpkg --list
Vous pouvez utiliser
dpkg-query -s <package> 2>/dev/null | grep -q ^"Status: install ok installed"$
dans les scripts, car il renvoie le code de sortie 1, si le<package>
n'est pas installé, et 0 si le<package>
est installé.la source
dpkg -s
retournez0
, cela ne signifie pas nécessairement que le paquet est complètement / correctement installé.dpkg -s
retourne également0
si le paquet est danshalf-configured
ou dans l'config-files
état (et je suppose aussi danshalf-installed
, mais je n'ai pas vérifié cela). Voir [la page de manuel dedpkg
( manpages.ubuntu.com/manpages/oneiric/man1/dpkg.1.html ) pour d'autres états "incomplets".Solution plus simple:
Il existe maintenant une
apt list
commande qui répertorie les packages installés. Vous pouvez également rechercher un package spécifique avecVoir
man apt
pour plus d'informations.la source
apt show
pour plus de détailsdpkg -s
utilisation programmatiqueJ'aime le
dpkg -s
statut avec les statuts1
si l'un des paquetages n'est pas installé, ce qui facilite son automatisation:Voir également:
Testé sur Ubuntu 18.10.
la source
Exemple d'utilisation d'une valeur spécifique en tant que var dans des scripts de shell (par exemple
test.sh
)Rendez-le exécutable et commencez par:
Ou faites ce que vous voulez dans vos scripts
la source
Vous devez vérifier le statut imprimé par
dpkg -l
exemple:Ici les deux
vim
etfirefox-esr
sont installés, vous pouvez donc taper:la source