我如何检查 apt 包安装了什么?

我如何检查 apt 包安装了什么?

我刚刚通过 apt 安装了 autojump 软件包,现在我不知道如何使用它。较新的版本使用别名j,但 apt 版本显然没有。

为了找出我应该执行哪些二进制文件来使用自动跳转,有没有办法查看包中具体安装了什么?

答案1

以下命令将列出该包安装的所有文件autojump

dpkg -L autojump

它是一个dpkg命令,因为 dpkg 实际上负责安装软件包,而 apt 只是一个运行 dpkg 的前端。

为了完整起见,还有反向命令:

dpkg -S file

这将为您提供所有包含命名内容的包file(这也可以是路径的单个部分)。

答案2

当你刚刚使用 apt 安装软件包时,下载的 .deb 文件仍然在 /var/cache/apt/archives/ 中

您可以使用 file-roller 打开文件,然后您将看到哪些文件和文件夹已添加到文件系统。对于可执行文件,它通常位于 usr/bin/ 文件夹中。

答案3

安装apt-file

sudo apt-get update && sudo apt-get install apt-file -y

用这种方法

apt-file show packageName

答案4

一旦安装了包,它的存档文件就会本地存储在 中/var/cache/apt/archives/

要检查存储在那里的文件的内容deb,请使用以下命令:

dpkg -c /var/cache/apt/archives/package-name.deb

注意,此方法只适用于最近安装的软件包。
如果自安装该软件包以来软件包缓存已被清空,则此方法在逻辑上将不起作用。


例如,就我的情况而言,该包的命令输出内容如下toilet

# dpkg -c /var/cache/apt/archives/toilet_0.2-1_i386.deb
drwxr-xr-x root/root         0 2010-05-12 18:21 ./
drwxr-xr-x root/root         0 2010-05-12 18:21 ./usr/
drwxr-xr-x root/root         0 2010-05-12 18:21 ./usr/bin/
-rwxr-xr-x root/root     14096 2010-05-12 18:21 ./usr/bin/toilet
drwxr-xr-x root/root         0 2010-05-12 18:21 ./usr/share/
drwxr-xr-x root/root         0 2010-05-12 18:21 ./usr/share/man/
drwxr-xr-x root/root         0 2010-05-12 18:21 ./usr/share/man/man1/
-rw-r--r-- root/root      1559 2010-05-12 18:21 ./usr/share/man/man1/toilet.1.gz
drwxr-xr-x root/root         0 2010-05-12 18:21 ./usr/share/doc/
drwxr-xr-x root/root         0 2010-05-12 18:21 ./usr/share/doc/toilet/
-rw-r--r-- root/root       164 2010-02-08 20:03 ./usr/share/doc/toilet/README
-rw-r--r-- root/root       174 2010-02-08 20:03 ./usr/share/doc/toilet/TODO
-rw-r--r-- root/root       708 2006-11-15 22:11 ./usr/share/doc/toilet/copyright
-rw-r--r-- root/root      9601 2010-02-08 20:22 ./usr/share/doc/toilet/changelog.gz
-rw-r--r-- root/root       346 2010-02-08 19:50 ./usr/share/doc/toilet/NEWS.gz
-rw-r--r-- root/root       428 2010-02-08 20:34 ./usr/share/doc/toilet/changelog.Debian.gz
lrwxrwxrwx root/root         0 2010-05-12 18:21 ./usr/bin/figlet-toilet -> toilet
lrwxrwxrwx root/root         0 2010-05-12 18:21 ./usr/share/man/man1/figlet-toilet.1.gz -> toilet.1.gz

如果您希望从输出中排除目录,只需将其附加| grep -v "^d"到命令末尾。

# dpkg -c /var/cache/apt/archives/toilet_0.2-1_i386.deb | grep -v "^d"
-rwxr-xr-x root/root     14096 2010-05-12 18:21 ./usr/bin/toilet
-rw-r--r-- root/root      1559 2010-05-12 18:21 ./usr/share/man/man1/toilet.1.gz
-rw-r--r-- root/root       164 2010-02-08 20:03 ./usr/share/doc/toilet/README
-rw-r--r-- root/root       174 2010-02-08 20:03 ./usr/share/doc/toilet/TODO
-rw-r--r-- root/root       708 2006-11-15 22:11 ./usr/share/doc/toilet/copyright
-rw-r--r-- root/root      9601 2010-02-08 20:22 ./usr/share/doc/toilet/changelog.gz
-rw-r--r-- root/root       346 2010-02-08 19:50 ./usr/share/doc/toilet/NEWS.gz
-rw-r--r-- root/root       428 2010-02-08 20:34 ./usr/share/doc/toilet/changelog.Debian.gz
lrwxrwxrwx root/root         0 2010-05-12 18:21 ./usr/bin/figlet-toilet -> toilet
lrwxrwxrwx root/root         0 2010-05-12 18:21 ./usr/share/man/man1/figlet-toilet.1.gz -> toilet.1.gz

相关内容