Existe-t-il un moyen (à partir d'un script) d'identifier le gestionnaire de packages système par défaut?
Pour clarifier, ce que je veux faire est d'exécuter une commande donnée et, sur Debian ou l'un de ses dérivés, il retournera quelque chose comme "apt", sur openSUSE, il retournera "zypp", sur Fedora et al, il retournera "miam", sur Arch Linux ça retournera "pacman" etc.
Je sais que je peux le faire avec quelque chose comme ce qui suit, je me demandais simplement s'il y avait une méthode plus robuste qui ne se briserait pas dès qu'il y aurait un exécutable du même nom.
which apt >/dev/null 2>&1
if [ $? -eq 0 ]
then
echo "apt"
fi
# etc...
apt-get
.Au lieu d'identifier les programmes binaires, vous devez commencer par identifier les distributions,
Donnez-vous simplement quelques lignes qui fonctionnent dans les scripts bash:
Bien que ces pièces ne soient pas fiables, mais généralement les gens ne le feront pas.
la source
J'ai choisi de suivre cette voie après avoir examiné les autres. Cela m'est venu lors de l'exécution de nombreux conteneurs Docker et nécessitant curl / jq et ne pouvant pas compter sur ce qui était disponible d'un travail à l'autre.
la source