Utilizzando zypper, come posso rimuovere tutti i pacchetti installati da un repository specifico?


10

Supponiamo di aver aggiunto un repository utilizzando zypper ar. Quindi, sono andato e ho installato più pacchetti da quel repository, ma ora voglio rimuoverli tutti.

Esiste un comando che mi consente di rimuovere tutti i pacchetti che ho installato solo da quel repository specifico?

Risposte:


7

Penso che non esista tale comando. È possibile elencare i pacchetti da un repository specifico:

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

o tutti i pacchetti orfani se hai già rimosso quel repository:

zypper packages --orphaned

Quindi potresti provare a cutimpacchettare i nomi dall'output e passarlo a zypper removese vale la pena.


Il mio sistema openSuSE 12.3 non ha l' --orphanedopzione, ma potrebbe funzionare: zypper packages -i -Relenca il pacchetto installato nell'ordine inverso del repository.
Jeroen Wiert Pluimers,

2
--orphanedè stato aggiunto in zypper 1.9.2 ( github.com/openSUSE/zypper/issues/34 )
marcin

1

È possibile utilizzare una combinazione di zypper search, awke xargsper rimuovere tutti i pacchetti da un repository. Per esempio:

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

awk '/^i(\+|\s)/ {print $3}'per abbinare tutti i pacchetti installati (i o i +)
Mesco

@Mesco zypper stesso dovrebbe stampare i pacchetti installati solo quando si utilizza --installed.
sebix,

giusto, usando -io --installed-only. Ma ho anche cercato io e i + all'inizio per saltare le prime file ( Loading repository data...). Forse ci sono metodi migliori, per saltare le prime 5 righe ma se usi già regex ...;)
Mesco

forse sto usando diverse versioni di zypper (1.14.4) ma il suo uomo dice che l'ordine dovrebbe essere se [options] [query]così la tua soluzione non ha funzionato.
Mesco,

Ah, ora capisco la tua preoccupazione. Ho aggiornato la risposta. Informazioni sulla sintassi di ricerca: utilizzo solo opzioni e nessuna query, quindi credo che l'ordine sia corretto.
sebix,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.