Come posso ottenere un elenco con i pacchetti selezionati da apt-get autoremove?


13

Esiste un comando che stampa solo il nome dei pacchetti che apt-get autoremoveseleziona? Sto creando uno script che aggiorna il kernel, rimuove il vecchio kernel e i pacchetti non necessari ( apt-get autoremove), ma voglio stampare sullo schermo l'elenco dei pacchetti che verranno rimossi da apt-get autoremove, come posso fare?


Dovresti solo essere in grado di farlo funzionare sudo apt-get autoremove -ye dovrebbe rimuovere tutto ciò che è necessario rimuovere ...

Prova a leggere qui, [Questo potrebbe essere di aiuto.] [1] [1]: serverfault.com/questions/433250/…
Doug

Per ottenere l'elenco dei pacchetti senza rimuoverli, in realtà puoi farlosudo apt-get --dry-run autoremove
heemayl

Voglio solo ottenere il nome dei pacchetti, non l'intero output del comando ....
Afonso Sousa,

Risposte:


13

Poiché secondo il tuo commento vuoi elencare solo i pacchetti che verranno rimossi:

apt-get --dry-run autoremove | grep -Po '^Remv \K[^ ]+'

grep ripartizione dei comandi:

  • -P: Interpreta il modello dato come modello PCRE (Perl Compatible Regular Expression)
  • -o: Stampa solo la stringa corrispondente anziché l'intera riga

Ripartizione Regex:

  • ^: corrisponde all'inizio della riga
  • Remv: corrisponde a una Remvstringa
  • \K: esclude la sottostringa precedentemente abbinata dalla stringa corrispondente
  • [^ ]+: corrisponde a uno o più caratteri no
$ apt-get --dry-run autoremove | grep -Po 'Remv \K[^ ]+'
libapache2-mod-php5
php5-readline
php5-cli
libonig2
libqdbm14
php5-json
php5-common 

1
@GeekLynxAfonso, non è necessario utilizzarlo sudocon l' --dry-runopzione.
jarno,

@jarno Ha senso, il fatto che probabilmente non fosse necessario non mi è venuto in mente. Grazie
kos il

2

In realtà devi solo filtrare l'output del tuo

sudo apt-get autoremove --dry-run 

comando.

Ad esempio puoi farlo con

sudo apt-get autoremove --dry-run  | head -n 5 | tail -n 1

Anche il tuo comando funziona !! Ma preferisco il comando del kos ... Ma grazie lo stesso !! :)
Afonso Sousa,
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.