3 581
contributi
m (→Visualizzare tutti i pacchetti provenienti da una release: spiegazione grep) |
|||
Riga 75: | Riga 75: | ||
Soprattutto in caso di un sistema con pinning dei pacchetti si suggerisce anche l'utilizzo del comando [[apt-cache]]: | Soprattutto in caso di un sistema con pinning dei pacchetti si suggerisce anche l'utilizzo del comando [[apt-cache]]: | ||
<pre> $ apt-cache policy nomepacchetto </pre> | <pre> $ apt-cache policy nomepacchetto </pre> | ||
Questo, come | Questo, come <code>apt-show-versions</code> mostra la versione del pacchetto installata ed i possibili upgrade, inoltre indica per ogni possibile versione del medesimo sia il [[repository]] di provenienza sia il valore di pinning attribuito. | ||
Ad esempio, sul mio sistema: | Ad esempio, sul mio sistema: | ||
Riga 91: | Riga 91: | ||
10 http://ftp.it.debian.org stable/main Packages</pre> | 10 http://ftp.it.debian.org stable/main Packages</pre> | ||
Un'ulteriore alternativa è l'utilizzo di [[aptitude]] con versions. Ad esempio, per vedere i pacchetti provenienti da unstable sul proprio sistema: | Un'ulteriore alternativa è l'utilizzo di [[aptitude]] con versions, che mostra sempre i risultati per [[suite]]. Ad esempio, per vedere i pacchetti provenienti da unstable (la ''suite'' di Sid) sul proprio sistema: | ||
<pre>$ aptitude versions --group-by=none ~i | grep unstable</pre> | <pre>$ aptitude versions --group-by=none \~i | grep unstable</pre> | ||
in questo modo cerchiamo le versioni di tutti i pacchetti installati (~i), visualizzando per ogni riga il nome del pacchetto con la versione e la provenienza (--group-by=none) e filtrando con un semplice "grep" le versioni che provengono da "unstable" appunto. Se si volesse passare il tutto ad esempio allo stesso aptitude per rimuovere tutti i pacchetti in unstable (v. esempio con <code>apt-show-versions</code>): | in questo modo cerchiamo le versioni di tutti i pacchetti installati (~i), visualizzando per ogni riga il nome del pacchetto con la versione e la provenienza (--group-by=none) e filtrando con un semplice "grep" le versioni che provengono da "unstable" appunto. Se si volesse passare il tutto ad esempio allo stesso aptitude per rimuovere tutti i pacchetti in unstable (v. esempio con <code>apt-show-versions</code>): | ||
<pre># aptitude remove $(aptitude versions --group-by=none ~i | grep unstable | awk '{if ($2=="A") print $3; else print $2}')</pre> | <pre># aptitude remove $(aptitude versions --group-by=none \~i | grep unstable | awk '{if ($2=="A") print $3; else print $2}')</pre> | ||
siamo "costretti" ad utilizzare awk (al posto di cut) in quanto i primi indici delle linee potrebbero essere "i" e poi <nome_pacchetto> oppure "i A" <nome_pacchetto> se quest'ultimo è stato installato automaticamente e dunque come dipendenza. awk ci permette dunque di inserire la "clausola" di verificare se è presente appunto il carattere "A" come secondo elemento (ricordo che awk utilizza di default gli spazi come delimitatori) e di stampare dunque il terzo elemento (dunque il nome del pacchetto, altrimenti quest'ultimo come secondo elemento). | siamo "costretti" ad utilizzare awk (al posto di cut) in quanto i primi indici delle linee potrebbero essere "i" e poi <nome_pacchetto> oppure "i A" <nome_pacchetto> se quest'ultimo è stato installato automaticamente e dunque come dipendenza. awk ci permette dunque di inserire la "clausola" di verificare se è presente appunto il carattere "A" come secondo elemento (ricordo che awk utilizza di default gli spazi come delimitatori) e di stampare dunque il terzo elemento (dunque il nome del pacchetto, altrimenti quest'ultimo come secondo elemento). |
contributi