J'utilise Ubuntu 9:10 et un paquet appelé M2Crypto est installé (version 0.19.1). Je dois télécharger, créer et installer la dernière version du paquet M2Crypto (0.20.2).
Le paquet 0.19.1 contient des fichiers dans plusieurs emplacements, notamment (/ usr/share/pyshared et /usr/lib/pymodules.python2.6).
Comment puis-je désinstaller complètement la version 0.19.1 de mon système avant d'installer 0.20.2?
Vous voudrez peut-être examiner un gestionnaire de paquets Python tel que pip . Si vous ne souhaitez pas utiliser un gestionnaire de paquets Python, vous devriez pouvoir télécharger M2Crypto et construire/compiler/installer par-dessus l'ancienne installation.
Le meilleur moyen que j'ai trouvé est d'exécuter cette commande depuis un terminal
Sudo pip install [package_name] --upgrade
Sudo
vous demandera d'entrer votre mot de passe root pour confirmer l'action.
Pour mettre à jour automatiquement tous les paquets obsolètes (installés avec pip), lancez le script ci-dessous,
pip install $(pip list --outdated | awk '{ print $1 }') --upgrade
Ici, pip list --outdated
listera tous les paquets périmés, puis nous le dirigerons vers awk, de sorte qu’il n’imprimera que les noms . Ensuite, la $(...)
en fera une variable, puis tout sera fait automatiquement. Assurez-vous que vous avez les autorisations. (Il suffit de mettre Sudo
avant pip si vous êtes confus) J'écrirais un script nommé pip-upgrade
Le code est ci-dessous,
#!/bin/bash
Sudo pip install $(pip list --outdated | awk '{ print $1 }') --upgrade
Ensuite, utilisez les lignes de script suivantes pour le préparer:
Sudo chmod +x pip-upgrade
Sudo cp pip-upgrade /usr/bin/
Ensuite, appuyez simplement sur pip-upgrade
et le tour est joué!
pip list --outdated
Vous obtiendrez la liste des packages obsolètes.pip install [package] --upgrade
Il va mettre à jour le [package]
et désinstaller la version précédente.Pour mettre à jour pip:
py -m pip install --upgrade pip
Encore une fois, cela désinstallera la version précédente de pip et installera la dernière version de pip.
pip install package_name -U
pip install $(pip list --outdated --format=columns |tail -n +3|cut -d" " -f1) --upgrade
for i in $(pip list --outdated --format=columns |tail -n +3|cut -d" " -f1); do pip install $i --upgrade; done
Je pense que le meilleur one-line est:
pip install --upgrade <package>==<version>
Comment le paquet a-t-il été installé à l'origine? Si c'était via apt, vous pourriez juste être capable de faire apt-get remove python-m2crypto
Si vous l'avez installé via easy_install, je suis quasiment sûr que le seul moyen est de simplement supprimer les fichiers sous lib, shared, etc.
Ma recommandation dans le futur? Utilisez quelque chose comme pip pour installer vos paquets. En outre, vous pouvez rechercher un élément appelé virtualenv afin que vos packages soient stockés environnement par environnement plutôt que uniquement à la racine.
Avec pip, c'est assez simple:
pip install m2crypto
Mais vous pouvez également installer à partir de git, svn, etc repos avec la bonne adresse. Tout cela est expliqué dans la documentation de pip
Dans le cahier Jupyter, un moyen très simple consiste à
!pip install <package_name> --upgrade
Donc, il vous suffit de remplacer par le nom du paquet actuel.
Obtenez tous les packages obsolètes et créez un fichier de commandes avec les commandes Suivantes Pip install xxx --upgrade pour chaque package obsolète
pip install -U $(pip list --outdated | awk 'NR>2 {print $1}')
$ pip install pipupgrade
$ pipupgrade --latest --interactive
pipupgrade vous aide à mettre à niveau votre système, local ou vos paquets, à partir d'un fichier requirements.txt
! Il met également à niveau de manière sélective les paquets qui ne cassent pas le changement. Compatible avec Python2.7 +, Python3.4 + et pip9 +, pip10 +, pip18 +.
NOTE: je suis l'auteur de l'outil.