Ich verwende Ubuntu 9:10 und ein Paket namens M2Crypto ist installiert (Version 0.19.1). Ich muss die neueste Version des M2Crypto-Pakets (0.20.2) herunterladen, erstellen und installieren.
Das 0.19.1-Paket enthält Dateien an verschiedenen Speicherorten, darunter (/ usr / share / pyshared und /usr/lib/pymodules.python2.6).
Wie kann ich Version 0.19.1 vor der Installation von 0.20.2 vollständig von meinem System deinstallieren?
Der beste Weg, den ich gefunden habe, besteht darin, diesen Befehl vom Terminal aus auszuführen
sudo
Sie werden aufgefordert, Ihr Root-Passwort einzugeben, um die Aktion zu bestätigen.Hinweis: Bei einigen Benutzern ist möglicherweise stattdessen pip3 installiert. In diesem Fall verwenden
quelle
pip update
undpip upgrade
war verzweifelt, bis ich--upgrade
hier sah . Warum fügen sie keinenpip upgrade
Befehl hinzu?sudo
ist nicht erforderlich.Um alle veralteten Pakete (die mit pip installiert wurden) automatisch zu aktualisieren, führen Sie einfach das folgende Skript aus:
Hier
pip list --outdated
werden alle veralteten Pakete aufgelistet und dann an awk weitergeleitet, sodass nur die Namen gedruckt werden. Dann$(...)
wird es zu einer Variablen und dann wird alles automatisch erledigt. Stellen Sie sicher, dass Sie über die Berechtigungen verfügen. (Setzen Sie einfachsudo
vor Pip , wenn Sie verwirrt sind) Ich habe ein Skript mit dem Namen schreiben würde,pip-upgrade
ist der Code unten,Verwenden Sie dann die folgenden Skriptzeilen, um es vorzubereiten:
Dann einfach schlagen
pip-upgrade
und voila!quelle
awk: cmd. line:1: { print $1 })
pip
müssen Sie die--format=legacy
Option verwenden, dpip list --outdated --format=legacy
. H. Auch zu Ihrer Information: Das blinde Aktualisieren aller Module über Pip kann in vielen Linux-Distributionen sehr gefährlich sein. Viele von ihnen bieten bestimmte Python-Module über Distribution-Pakete an, und einige dieser Distributionen (insbesondere RHEL) können beim Aktualisieren von Shit schwer brechen ... ganz zu schweigen von der Tatsache, dass die Distribution-Pakete bei einem Update über Pip Ihre Änderungen möglicherweise rückgängig machen ein zukünftiges Update.pip install $(pip list --outdated | tail +3 | grep -v sdist | awk '{ print $1 }') --upgrade
pip list --outdated
Sie über die Windows-Eingabeaufforderung Folgendes aus: Sie erhalten die Liste der veralteten Pakete.pip install [package] --upgrade
Es wird[package]
die vorherige Version aktualisiert und deinstalliert.So aktualisieren Sie pip:
Auch hier wird die vorherige Version von pip deinstalliert und die neueste Version von pip installiert.
quelle
quelle
Ich denke, der beste Einzeiler ist:
quelle
Verwenden pipupgrade !
Mit pipupgrade können Sie Ihr System, Ihr lokales System oder Ihre Pakete von einer
requirements.txt
Datei aus aktualisieren ! Außerdem werden Pakete selektiv aktualisiert, bei denen Änderungen nicht unterbrochen werden. Kompatibel mit Python2.7 +, Python3.4 + und pip9 +, pip10 +, pip18 +.HINWEIS: Ich bin der Autor des Tools.
quelle
pip3.7 list --outdated | sed -n -e '3,$s/ .*//p'
; mache pip3.7 install --upgrade $ i; fertigWie wurde das Paket ursprünglich installiert? Wenn es über apt wäre, könnten Sie es einfach tun
apt-get remove python-m2crypto
Wenn Sie es über easy_install installiert haben, bin ich mir ziemlich sicher, dass der einzige Weg darin besteht, die Dateien einfach unter lib, shared usw. in den Papierkorb zu werfen.
Meine Empfehlung für die Zukunft? Verwenden Sie so etwas wie pip , um Ihre Pakete zu installieren. Darüber hinaus können Sie in etwas namens virtualenv nachschlagen sodass Ihre Pakete auf Umgebungsbasis und nicht nur auf Root-Basis gespeichert werden.
Mit pip ist es ziemlich einfach:
Sie können aber auch git-, svn- usw. Repos mit der richtigen Adresse installieren. Dies alles wird in der Pip-Dokumentation erklärt
quelle
quelle
In Juptyer Notebook ist ein sehr einfacher Weg
Sie müssen also nur durch den tatsächlichen Paketnamen ersetzen.
quelle
Holen Sie sich alle veralteten Pakete und erstellen Sie eine Batch-Datei mit den folgenden Befehlen pip install xxx --upgrade für jedes veraltete Paket
quelle