dpkg-query(1) narzędzie przepytywania bazy danych dpkg

SKŁADNIA

dpkg-query [opcja...] polecenie

OPIS

dpkg-query jest narzędziem służącym do pokazywania informacji o pakietach wymienionych w bazie danych dpkg.

POLECENIA

-l, --list [wzorzec-nazwy-pakietu...]
Wypisuje listę pakietów odpowiadających podanemu wzorcu nazwy. Jeśli nie podano wzorca-nazwy-pakietu, wypisuje listę wszystkich pakietów z pliku /var/lib/dpkg/status, pomijając jednak te, które są oznaczone jako niezainstalowane (czyli takie, które zostały uprzednio wyczyszczone z plików konfiguracyjnych - purge). Do wzorca-nazwy-pakietu można wpisać znaki specjalne powłoki (wildcards). Prawdopodobnie potrzebne będzie zacytowanie wzorca-nazwy-pakietu, aby powłoka nie rozwinęła tego wzorca. Na przykład, poniższe polecenie wypisze nazwy wszystkich pakietów zaczynających się od "libc6":

  dpkg-query -l 'libc6*'

Pierwsze trzy kolumny wyniku pokazują żądane działanie, stan pakietu i błędy, w tej kolejności.

Żądane działanie:

  u = Unknown (nieznane)
  i = Install (instalacja)
  h = Hold    (zatrzymanie)
  r = Remove  (usunięcie)
  p = Purge   (wyczyszczenie)

Stan pakietu:

  n = Not-installed     (niezainstalowany)
  c = Config-files      (pliki konfiguracyjne)
  H = Half-installed    (częściowo zainstalowany)
  U = Unpacked          (rozpakowany)
  F = Half-configured   (częściowo skonfigurowany)
  W = Triggers-awaiting (oczekuje na wyzwalacze)
  t = Triggers-pending  (przetwarzane wyzwalacze)
  i = Installed         (zainstalowany)

Oznaczenia błędów:

  <puste>             (brak)
  R = Reinst-required (wymagana ponowna instalacja)

Wielka litera stanu lub błędu oznacza, że pakiet może powodować wiele problemów. Podręcznik dpkg(1) zawiera informacje na temat powyższych stanów i oznaczeń.

Format wyjścia tej opcji nie jest konfigurowalny, ale automatycznie się zmienia, dostosowując się do szerokości terminalu. Jest to przeznaczone dla ludzi i nie musi być łatwo parsowalne przez maszynę. Patrz opcje -W (--show) and --showformat, aby dowiedzieć się, jak skonfigurować format wyjścia.

-W, --show [wzorzec-nazwy-pakietu...]
Zupełnie tak jak opcja --list, ta opcja wyświetli wszystkie pakiety pasujące do danego wzorca. Jednakże użytkownik może dostosować format wyjścia do swoich potrzeb za pomocą opcji --showformat. W domyślnym formacie dla każdego pasującego pakietu wyświetlana jest pojedyncza linia zawierająca jego nazwę (poszerzoną o oznaczenie architektury w przypadku pakietów Multi-arch same) oraz - po znaku tabulacji - zainstalowaną wersję.
-s, --status nazwa-pakietu...
Podanie stanu pakietu o podanej nazwie. Polecenie po prostu wyświetli informacje, które znajdują się w bazie danych pakietów. Gdy wypisane jest wiele nazw-pakietu, to żądane wpisy stanu są oddzielone pustym wierszem, z tą samą kolejnością jak podano w liście argumentów.
-L, --listfiles nazwa-pakietu...
Podanie listy plików zainstalowanych z nazwy-pakietu. Gdy zainstalowanych jest wiele nazw-pakietu, to żądane listy plików są oddzielone pustym wierszem, z tą samą kolejnością jak żądana lista argumentów. Jednakże pliki, które zostały utworzone przez skrypty instalacyjne pakietu, nie będą podane.
--control-list nazwa-pakietu
Wypisuje pliki kontrolne zainstalowane w systemie z nazwy-pakietu. Mogą być one użyte jako argumenty wejściowe do --control-show.
--control-show nazwa-pakietu plik-kontrolny
Wypisuje plik-kontrolny zainstalowany w systemie z nazwy-pakietu na standardowe wyjście.
-c, --control-path nazwa-pakietu [plik-kontrolny]
Wyświetla listę ścieżek dla plików kontrolnych instalowanych w systemie przez pakiet o podanej nazwie-pakietu. Jeśli podany jest plik-kontrolny, wyświetlana jest jedynie ścieżka dla tego pliku kontrolnego, o ile tylko istnieje. Uwaga: to polecenie jest przestarzałe, proszę używać w zamian --control-list i --control-show.
-S, --search wzorzec-wyszukiwania-nazwy-pliku...
Szukanie pliku, którego własnością są pliki odnoszące się do podanego wzorca. Wzorzec może zawierać zwykłe operatory powtórzenia. Polecenie to nie wyszuka dodatkowych plików tworzonych przez skrypty instalacyjne pakietów oraz nie wyświetli alternatyw.
-p, --print-avail nazwa-pakietu...
Wyświetla szczegółowe informacje na temat pakietu nazwa-pakietu, pochodzące z pliku /var/lib/dpkg/available. Gdy wypisane jest wiele nazw-pakietu, żądane wpisy available są oddzielone pustym wierszem, z tą samą kolejnością jak podano w liście argumentów.

Użytkownicy nakładek opartych o APT powinni używać apt-cache show package-name zamiast tej opcji, ponieważ plik available jest utrzymywany w aktualności jedynie przy użyciu dselect.

-?, --help
Wyświetla informację o użytkowaniu i kończy działanie.
--version
Wyświetla informację o wersji i pomyślnie kończy działanie.

OPCJE

--admindir=katalog
Zmienia położenie bazy danych dpkg. Domyślnie jest to /var/lib/dpkg.
--load-avail
Ładuje również dostępne pliki podczas używania poleceń --show i --list, które obecnie domyślnie jedynie odpytują pliki stanu.
-f, --showformat=format
Opcja jest używana do podania formatu wyjścia produkowanego przez --show. Format jest łańcuchem znaków, który będzie wyświetlony dla każdego wypisanego pakietu.

W łańcuchu formatu, "\" jest znakiem cytowania:

    \n  nowa linia
    \r  powrót karetki
    \t  tabulacja

"\" poprzedzający jakikolwiek inny znak znosi specjalne znaczenie następującego po nim znaku, co może być przydatne dla "\" oraz "$".

Informacje o pakiecie można wyświetlać, dodając odwołania do pól pakietu z użyciem składni "${pole[;szerokość]}". Pola są wyrównywane do prawej strony, chyba że szerokość jest liczbą ujemną, w którym to wypadku będzie użyte wyrównanie do lewej strony. Rozpoznawane są następujące pola, ale niekoniecznie są one włączane w pliku statusu (trafiają tam tylko pola wewnętrzne lub pola zawarte w binarnym pakiecie):

    Architecture
    Bugs
    Conffiles (wewnętrzne)
    Config-Version (wewnętrzne)
    Conflicts
    Breaks
    Depends
    Description
    Enhances
    Essential
    Filename (wewnętrzne, związane z interfejsem)
    Homepage
    Installed-Size
    MD5sum (wewnętrzne, związane z interfejsem)
    MSDOS-Filename (wewnętrzne, związane z interfejsem)
    Maintainer
    Origin
    Package
    Pre-Depends
    Priority
    Provides
    Recommends
    Replaces
    Revision (przestarzałe)
    Section
    Size (wewnętrzne, związane z interfejsem)
    Source
    Status (wewnętrzne)
    Suggests
    Tag (zwykle nie w .deb, ale w plikach Packages repozytorium)
    Triggers-Awaited (wewnętrzne)
    Triggers-Pending (wewnętrzne)
    Version

Poniższe pola są wirtualne i są tworzone przez dpkg-query z wartości pobranych z innych pól (proszę zauważyć, że nie używają one prawidłowych nazw pól w plikach kontrolnych):

    binary:Package
    binary:Summary
    db:Status-Abbrev
    source:Package
    source:Version

Domyślnym formatem jest "${binary:Package}\t${Version}\n". Można również zażądać wszystkich pozostałych pól z pliku status (tj. pól zdefiniowanych przez użytkownika). Zostaną one wypisane w takiej postaci, w jakiej znajdują się w pliku status, nie będzie więc dokonywana żadna konwersja czy sprawdzanie błędów. binary:Package jest specjalnym polem, które wyświetla nazwę pakietu z oznaczeniem architektury (takim jak "libc6:amd64"), jeśli pakiet posiada pole Multi-Arch z wartością same i w związku z tym jego nazwa mogłaby być niejednoznaczna. Aby wyświetlić nazwę opiekuna pakietu dpkg i zainstalowaną wersję tego pakietu, można uruchomić:

  dpkg-query -W -f='${binary:Package} ${Version}\t${Maintainer}\n' dpkg

KOD WYJŚCIA

0
Żądane zapytanie zakończyło się powodzeniem.
1
Wystąpiły problemy podczas przetwarzania linii poleceń lub wykonywania odpytywania, w tym nie znaleziono pliku lub pakietu (z wyjątkiem dla --control-path).

ŚRODOWISKO

DPKG_ADMINDIR
Jeśli jest ustawiona i nie użyto opcji --admindir, będzie używana jako katalog danych dpkg.
COLUMNS
Zmienna ta wpływa na wyjście polecenia --list, zmieniając jego szerokość.

TŁUMACZE

Piotr Roszatycki <[email protected]>, 1999
Bartosz Feński <[email protected]>, 2004-2005
Robert Luberda <[email protected]>, 2006-2008
Wiktor Wandachowicz <[email protected]>, 2008
Michał Kułach <[email protected]>, 2012