dpkg-query命令是Debian linux中软件包的查询工具,它从dpkg软件包数据库中查询并显示软件包的信息。
查询软件包时,软件包的名称支持通配符,如tree*将查询所有以tree开头的软件包。
用法:dpkg-query [<选项> ...] <命令>
命令: -s|--status <软件包> ... 显示软件包详尽的状态信息。 -p|--print-avail <软件包> ... 显示当前可供安装的版本的详细信息。 -L|--listfiles <软件包> ... 列出所有属于这个(些)软件包的文件。 -l|--list [<表达式> ...] 简要地列出软件包。 -W|--show <表达式> ... 显示软件包的相关信息。 -S|--search <表达式> ... 搜寻拥有该文件(或多个文件)的软件包。 --control-list <软件包> 打印软件包控制文件列表。 --control-show <软件包> <文件> 显示软件包控制文件。 -c|--control-path <软件包> [<文件>] 显示软件包控制文件的路径。 -?, --help 显示本帮助信息。 --version 显示版本信息。 选项: --admindir=<目录> 使用 <目录> 而非 /var/lib/dpkg。 --load-avail 在 --show 和 --list 之后使用有效文件。 -f|--showformat=<格式串> 令 --show 使用其它的格式输出。 格式串的语法: 格式串是用于显示每一个软件包的字符串。格式串可以包含标准的 脱字符(escape sequences),如 \n (换行)、\r (回车)、或是 \\ (反斜杠)。 还可以通过加入软件包属性的变量引用来反映软件包的相关信息, 要在某些字段引用属性变量的话,可以用这样的语法:${var[;width]}。 字段一般是靠右对齐的,除非它的宽度是负数。若其宽度是负数, 那么字段将会靠左对齐。
root@Ubuntu20.04:~# dpkg-query -l sysstat Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Architecture Description +++-==============-============-============-================================== ii sysstat 12.2.0-2 amd64 system performance tools for Linux
root@Ubuntu20.04:~# dpkg-query -s sysstat Package: sysstat Status: install ok installed Priority: optional Section: admin Installed-Size: 1488 Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com> Architecture: amd64 Version: 12.2.0-2 Depends: lsb-base (>= 3.0-6), ucf (>= 2.003), xz-utils, debconf (>= 0.5) | debconf-2.0, libc6 (>= 2.14), libsensors5 (>= 1:3.5.0) Recommends: cron | cron-daemon Suggests: isag Conffiles: /etc/cron.d/sysstat 455c3c071b6daabb4e4490828975034c /etc/cron.daily/sysstat 19b1317e195208eed1a0bcd68be2e637 /etc/init.d/sysstat 222cea8f69c5baad2e2e2189a913eed8 /etc/sysstat/sysstat ca9b91d6a6738aa6f48a7d2b2b8ee774 /etc/sysstat/sysstat.ioconf 1699371117f9393aebb9523c4cbadca8 Description: system performance tools for Linux The sysstat package contains the following system performance tools: - sar: collects and reports system activity information; - iostat: reports CPU utilization and disk I/O statistics; - tapestat: reports statistics for tapes connected to the system; - mpstat: reports global and per-processor statistics; - pidstat: reports statistics for Linux tasks (processes); - sadf: displays data collected by sar in various formats; - cifsiostat: reports I/O statistics for CIFS filesystems. . The statistics reported by sar deal with I/O transfer rates, paging activity, process-related activities, interrupts, network activity, memory and swap space utilization, CPU utilization, kernel activities and TTY statistics, among others. Both UP and SMP machines are fully supported. Original-Maintainer: Robert Luberda <robert@debian.org> Homepage: http://pagesperso-orange.fr/sebastien.godard/
root@Ubuntu20.04:~# dpkg-query -L sysstat /. /etc /etc/cron.d /etc/cron.d/sysstat /etc/cron.daily /etc/cron.daily/sysstat /etc/init.d /etc/init.d/sysstat /etc/sysstat /etc/sysstat/sysstat /etc/sysstat/sysstat.ioconf /lib /lib/systemd /lib/systemd/system /lib/systemd/system/sysstat.service /usr /usr/bin /usr/bin/cifsiostat /usr/bin/iostat /usr/bin/mpstat /usr/bin/pidstat /usr/bin/sadf /usr/bin/sar.sysstat /usr/bin/tapestat /usr/lib /usr/lib/sysstat .......略
root@Ubuntu20.04:~# dpkg-query -W --showformat='${Package} ${Version}\n' accountsservice 0.6.55-0ubuntu12~20.04.4 acl 2.2.53-6 adduser 3.118ubuntu2 adwaita-icon-theme 3.36.1-2ubuntu0.20.04.2 ........略
root@Ubuntu20.04:~# dpkg-query -l |grep gcc
root@Ubuntu20.04:~# dpkg-query -W -f='${Status} ${Version}\n' tree install ok installed 1.8.0-1
root@Ubuntu20.04:~# dpkg-query -S /usr/bin/iostat sysstat: /usr/bin/iostat