dpkg-query(1) 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...]
List packages matching given pattern. If no package-name-pattern is given, list all packages in /var/lib/dpkg/status, excluding the ones marked as not-installed (i.e. those which have been previously purged). Normal shell wildcard characters are allowed in package-name-pattern. Please note you will probably have to quote package-name-pattern to prevent the shell from performing filename expansion. For example this will list all package names starting with ``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
List control files installed to your system from package-name (since dpkg 1.16.5). These can be used as input arguments to --control-show.
--control-show nome-pacchetto file-controllo
Print the control-file installed to your system from package-name to the standard output (since dpkg 1.16.5).
-c, --control-path nome-pacchetto [file-controllo]
List paths for control files installed to your system from package-name (since dpkg 1.15.4). If control-file is specified then only list the path for that control file if it is present.

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...
Search for packages that own files corresponding to the given pattern. Standard shell wildcard characters can be used in the pattern, where asterisk (*) and question mark (?) will match a slash, and blackslash (\) will be used as an escape character.

If the first character in the filename-search-pattern is none of '*[?/' then it will be considered a substring match and will be implicitly surrounded by '*' (as in *filename-search-pattern*). If the subsequent string contains any of '*[?\', then it will handled like a glob pattern, otherwise any trailing '/' or '/.' will be removed and a literal path lookup will be performed.

This command will not list extra files created by maintainer scripts, nor will it list alternatives.

-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
Also load the available file when using the --show and --list commands, which now default to only querying the status file (since dpkg 1.16.2).
-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
It contains the binary package name with a possible architecture qualifier like "libc6:amd64" (since dpkg 1.16.2). An architecture qualifier will be present to make the package name unambiguous, for example if the package has a Multi-Arch field with a value of same or the package is of a foreign architecture.
binary:Summary
Contiene la descrizione breve del pacchetto (a partire da dpkg 1.16.2).
db:Status-Abbrev
It contains the abbreviated package status (as three characters), such as "ii " or "iHR" (since dpkg 1.16.2). See the --list command description for more details.
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
The requested query failed either fully or partially, due to no file or package being found (except for --control-path, --control-list and --control-show were such errors are fatal).
2
Fatal or unrecoverable error due to invalid command-line usage, or interactions with the system, such as accesses to the database, memory allocations, etc.

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.