Wie kann ich mit zypper alle installierten Pakete aus einem bestimmten Repository entfernen?


10

Angenommen, ich habe ein Repository mit hinzugefügt zypper ar. Dann habe ich mehrere Pakete aus diesem Repository installiert, aber jetzt möchte ich alle entfernen.

Gibt es einen Befehl, mit dem ich alle Pakete, die ich gerade installiert habe, aus diesem bestimmten Repository entfernen kann?

Antworten:


7

Ich denke, es gibt keinen solchen Befehl. Sie können Pakete aus einem bestimmten Repository auflisten:

zypper search --installed-only --repo devel:tools

oder alle verwaisten Pakete, wenn Sie dieses Repository bereits entfernt haben:

zypper packages --orphaned

Dann könnten Sie versuchen, cutNamen aus der Ausgabe zu verpacken und an zu übergeben, zypper removewenn sich die Mühe lohnt.


Mein openSuSE 12.3-System verfügt nicht über die --orphanedOption, dies könnte jedoch funktionieren :: zypper packages -i -REs listet das installierte Paket in umgekehrter Reihenfolge des Repositorys auf.
Jeroen Wiert Pluimers

2
--orphanedwurde in zypper 1.9.2 ( github.com/openSUSE/zypper/issues/34 ) hinzugefügt
marcin

1

Sie können eine Kombination von verwenden zypper search, awkund xargsalle Pakete aus einem Repository zu entfernen. Beispielsweise:

zypper se --repo openSUSE-Tumbleweed-Debug --installed | awk '/^i(\+|\s)/ {print $3}' | xargs sudo zypper rm

awk '/^i(\+|\s)/ {print $3}'um alle installierten Pakete (i oder i +)
abzugleichen

@Mesco zypper selbst sollte installierte Pakete nur bei Verwendung drucken --installed.
Sebix

richtig, mit -ioder --installed-only. Aber ich habe auch am Anfang nach i und i + gesucht, um die ersten paar Zeilen zu überspringen ( Loading repository data...). Vielleicht gibt es bessere Methoden, um die ersten 5 Zeilen zu überspringen, aber wenn Sie bereits Regex verwenden ...;)
Mesco

Vielleicht verwende ich eine andere Zypper-Version (1.14.4), aber der Mann sagt, dass die Reihenfolge so sein sollte, se [options] [query]dass Ihre Lösung nicht funktioniert hat.
Mesco

Ah, jetzt verstehe ich Ihre Besorgnis. Ich habe die Antwort aktualisiert. Über die Suchsyntax: Ich verwende nur Optionen und keine Abfrage, daher ist die Reihenfolge meiner Meinung nach korrekt.
Sebix
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.