yum – vérifier si le package est déjà installé

Lorsque yum install <X><X> a déjà été installé, yum ferme avec un statut de return de 1 et affiche "Error: Nothing to do".

Mis à part vérifier cette string dans la sortie (ce qui semble être une chose très fragile pour baser mon script), est-il possible de vérifier si le package existe déjà? De toute évidence, miam sait si oui ou non il existe déjà, puisqu'il jette cette erreur, mais comment puis-je accéder à cette connaissance?

Pour append à cela, certains packages sont téléchargés au moyen d'URL, pas de noms de packages, donc la vérification de la yum list installed ne fonctionne pas.

Dans votre script, utilisez rpm -q packagename :

 if rpm -q vim-enhanced then ... else ... fi 

Tu peux essayer:

 #yum list installed | grep tmux tmux.x86_64 1.9a-5.fc21 @updates 

ou:

 #yum list installed tmux Loaded plugins: langpacks Installed Packages tmux.x86_64 1.9a-5.fc21 @updates 

Sans grep vous obtenez des lignes supplémentaires, mais les deux sorties peuvent être passées à travers un éditeur de text en fonction de vos besoins.