NOME¶
dpkg-query - uno strumento per interrogare il database di dpkg
SINTASSI¶
dpkg-query [
opzione...]
comando
DESCRIZIONE¶
dpkg-query è uno strumento per mostrare informazioni sui pacchetti
elencati nel database di
dpkg.
COMANDI¶
- -l, --list [modello-nome-pacchetti...]
- Elenca i pacchetti che corrispondono al modello indicato. Se non viene
specificato alcun modello-nome-pacchetti, elenca tutti i pacchetti
in /var/lib/dpkg/status, esclusi quelli contrassegnati come
non-installati (cioè quelli che sono stati in precedenza
eliminati). In modello-nome-pacchetti è permesso l'uso dei
normali metacaratteri della shell. Notare che probabilmente sarà
necessario racchiudere modello-nome-pacchetti tra virgolette per
evitare che la shell esegua un'espansione del nome di file. Per esempio il
comando seguente elenca tutti i pacchetti il cui nome inizia con
«libc6»:
dpkg-query -l 'libc6*'
Le prime tre colonne dell'output mostrano, nell'ordine, l'azione desiderata,
lo stato del pacchetto e gli errori.
Azione desiderata:
u = Sconosciuta
i = Installazione
h = Blocco
r = Rimozione
p = Eliminazione completa
Stato del pacchetto:
n = Non-installato
c = File-di-configurazione
H = Semi-installato
U = Spacchettato
F = Semi-configurato
W = Triggers-awaiting
t = Triggers-pending
i = Installato
Contrassegni di errore:
<vuoto> = (nessuno)
R = Richiesta-reinstallazione
Una lettera di stato o di errore maiuscola indica che il pacchetto
probabilmente causerà problemi seri. Fare riferimento a
dpkg(1) per informazioni su tali stati e contrassegni.
Il formato di output di questa opzione non è configurabile, ma varia
automaticamente per essere adattato alla larghezza del terminale. È
pensato per essere letto da persone e non è facilmente leggibile da
macchine. Vedere -W (--show) e --showformat per un
modo per configurare il formato di output.
- -W, --show [modello-nome-pacchetti...]
- Proprio come l'opzione --list, questa elenca tutti i pacchetti che
corrispondono al modello indicato. Tuttavia l'output può essere
personalizzato usando l'opzione --showformat. L'output predefinito
fornisce una riga per ogni pacchetto che corrisponde, ciascuna riga
contiene il nome (esteso con l'elemento che identifica l'architettura per
i pacchetti Multi-Arch same) e la versione installata del
pacchetto, separati da una tabulazione.
- -s, --status nome-pacchetto...
- Segnala lo stato dei pacchetti specificati. Si limita a visualizzare la
voce nel database di stato dei pacchetti installati. Quando sono elencati
più nome-pacchetto, le voci di stato richieste sono separate
da una riga vuota, nello stesso ordine con cui sono specificate
nell'elenco degli argomenti.
- -L, --listfiles nome-pacchetto...
- Elenca i file installati nel sistema da nome-pacchetto. Quando sono
elencati più nome-pacchetto, gli elenchi di file richiesti
sono separati da una riga vuota, nello stesso ordine con cui sono
specificati nell'elenco degli argomenti. Tuttavia, notare che i file
creati da script di installazione specifici dei pacchetti non vengono
elencati.
- --control-list nome-pacchetto
- Elenca i file di controllo installati nel sistema da
nome-pacchetto. Possono essere usati come argomenti in input per
--control-show.
- --control-show nome-pacchetto file-controllo
- Stampa sullo standard output il file-controllo installato nel
sistema da nome-pacchetto.
- -c, --control-path nome-pacchetto
[file-controllo]
- Elenca i percorsi dei file di controllo installati nel sistema da
nome-pacchetto. Se viene specificato file-controllo allora
elenca solo il percorso di quel file di controllo, se presente.
Avvertimento: questo comando è deprecato perché
dà accesso diretto al database interno di dpkg; passare invece
all'uso di --control-list e --control-show per tutti i casi
in cui questi comandi possono fornire lo stesso risultato finale.
Tuttavia, fino a che c'è ancora almeno un caso in cui è
necessario questo comando (cioè quando si deve rimuovere uno script
postrm del manutentore pericoloso) e fino a che non c'è una buona
soluzione per il problema, questo comando non sarà rimosso.
- -S, --search modello-ricerca-nomefile...
- Cerca pacchetti a cui appartengono dei file che corrispondono al modello
specificato. Nel modello possono essere usati i metacaratteri standard
della shell. Questo comando non elenca i file aggiuntivi creati dagli
script dei manutentori, né elenca le alternative.
- -p, --print-avail nome-pacchetto...
- Visualizza i dettagli su nome-pacchetto, come trovati in
/var/lib/dpkg/available. Quando vengono elencati più
nome-pacchetto, le voci richieste in available sono separate
da una riga vuota, e sono nello stesso ordine con cui sono specificate
nell'elenco degli argomenti.
Gli utenti di frontend basati su APT dovrebbero usare apt-cache show
nome-pacchetto invece, dato che il file available viene
mantenuto aggiornato solo quando si usa dselect.
- -?, --help
- Mostra il messaggio sull'uso ed esce.
- --version
- Mostra la versione ed esce.
OPZIONI¶
- --admindir=dir
- Cambia la posizione del database di dpkg. La posizione predefinita
è /var/lib/dpkg.
- --load-avail
- Carica il file «available» anche quando si usano i comandi
--show e --list, che ora in modo predefinito interrogano
solo il file di stato.
- -f, --showformat=formato
- Questa opzione viene usata per specificare il formato dell'output che
verrà prodotto da --show. Il formato è una stringa
che verrà prodotta in output per ciascun pacchetto elencato.
Nella stringa di formato, “ \” introduce caratteri
escape:
\n nuova riga
\r ritorno di carrello
\t tabulazione
“ \” prima di qualsiasi altro carattere ne annulla ogni
significato speciale e questo è utile per “ \”
e “ $”.
Le informazioni sul pacchetto possono essere incluse inserendo riferimenti
con variabili a campi dei pacchetti, usando la sintassi “
${campo[;larghezza]}”. I campi
vengono stampati allineati a destra, a meno che la larghezza non sia
negativa nel qual caso viene usato l'allineamento a sinistra. Vengono
riconosciuti i seguenti nomi di campo, ma non sono necessariamente
disponibili nel file di stato (ci vanno solo i campi interni o i campi
memorizzati nel pacchetto binario):
Architecture
Bugs
Conffiles (interno)
Config-Version (interno)
Conflicts
Breaks
Depends
Description
Enhances
Essential
Filename (interno, relativo al frontend)
Homepage
Installed-Size
MD5sum (interno, relativo al frontend)
MSDOS-Filename (interno, relativo al frontend)
Maintainer
Origin
Package
Pre-Depends
Priority
Provides
Recommends
Replaces
Revision (obsoleto)
Section
Size (interno, relativo al frontend)
Source
Status (interno)
Suggests
Tag (solitamente non nei .deb ma nei file Packages dei repository)
Triggers-Awaited (interno)
Triggers-Pending (interno)
Version
I seguenti sono campi virtuali, generati da dpkg-query a partire dai
valori di altri campi (notare che questi non usano nomi validi per i campi
nei file di controllo):
- binary:Package
- Contiene il nome del pacchetto binario con un possibile qualificatore di
architettura come «libc6:amd64» (a partire da dpkg 1.16.2).
Il qualificatore di architettura sarà presente solo se il pacchetto
ha un campo Multi-Arch con un valore di same. Ciò
rende il nome di pacchetto non ambiguo.
- binary:Summary
- Contiene la descrizione breve del pacchetto (a partire da dpkg
1.16.2).
- db:Status-Abbrev
- Contiene lo stato abbreviato del pacchetto, come “ii” (a
partire da dpkg 1.16.2).
- db:Status-Want
- Contiene lo stato richiesto del pacchetto, parte del campo Status (a
partire da dpkg 1.17.11).
- db:Status-Status
- Contiene la parola di stato del pacchetto, parte del campo Status (a
partire da dpkg 1.17.11).
- db:Status-Eflag
- Contiene il contrassegno di errore di stato del pacchetto, parte del campo
Status (a partire da dpkg 1.17.11).
- source:Package
- Contiene il nome del pacchetto sorgente per questo pacchetto binario (a
partire da dpkg 1.16.2).
- source:Version
- Contiene la versione del pacchetto sorgente per questo pacchetto binario
(a partire da dpkg 1.16.2).
- La stringa di formato predefinita è “
${binary:Package}\t${Version}\n”. Di fatto, è
possibile richiedere anche tutti gli altri campi che si trovano nel file
di stato (cioè i campi definiti dall'utente). Verranno però
stampati come sono, senza che vanga fatta su di essi alcuna conversione o
alcun controllo degli errori. Per ottenere il nome del manutentore di
dpkg e la versione installata si può usare:
dpkg-query -W -f='${binary:Package} ${Version}\t${Maintainer}\n' dpkg
STATO D'USCITA¶
- 0
- L'interrogazione richiesta è stata effettuata con successo.
- 1
- Si sono verificati dei problemi durante l'analisi della riga di comando o
nell'effettuare l'interrogazione, incluso il non aver trovato alcun file o
pacchetto (tranne per --control-path).
AMBIENTE¶
- DPKG_ADMINDIR
- Se impostata e l'opzione --admindir non è stata specificata,
verrà usata come directory dei dati di dpkg.
- COLUMNS
- Questa impostazione influenza l'output dell'opzione --list
modificando la larghezza del suo output.
VEDERE ANCHE¶
dpkg(1).