apt-cache - 查询APT缓存
apt-cache [-agipns] [-o=config_string] [-c=config_file] {gencaches |
showpkg pkg... | showsrc pkg... | stats | dump | dumpavail |
unmet | search regex... |
show pkg [{=pkg_version_number | /target_release}]... |
depends pkg [{=pkg_version_number | /target_release}]... |
rdepends pkg [{=pkg_version_number | /target_release}]... |
pkgnames [prefix] |
dotty pkg [{=pkg_version_number | /target_release}]... |
xvcg pkg [{=pkg_version_number | /target_release}]... |
policy [pkg...] | madison pkg... | {-v | --version} |
{-h | --help}}
apt-cache
对APT的包缓存执行各种操作。不操作系统的状态,但会从包的元数据中搜索和生成有趣的输出。元数据通过一些命令的update
来获取和更新,如apt-get
,所以如果上次更新之间过于久远,它可能会过时,但是作为交换,apt-cache
的运行独立于配置的源(比如当离线了)。
下面是命令:
gencaches
showpkg pkg…
apt-cache showpkg libreadline2
会产生类似下面的输出:Package: libreadline2
Versions: 2.1-12(/var/state/apt/lists/foo_Packages),
Reverse Depends:
libreadlineg2,libreadline2
libreadline2-altdev,libreadline2
Dependencies:
2.1-12 - libc5 (2 5.4.0-0) ncurses3.0 (0 (null))
Provides:
2.1-12 -
Reverse Provides:
可以看出,因此可以看出 libreadline2 版本 2.1-12 依赖于 libc5, ncurses3.0 。反过来,libreadlineg2 和 libreadline2-altdev 依赖于 libreadline2。对于输出其余部分的具体含义,最好查阅apt源代码。stats
stats 显示有关缓存的一些统计信息。不需要更多参数。报告的统计信息是:
showsrc pkg…
--only-source
来只展示源包名。dump
dumpavail
dpkg(1)
一起只用,并且被dselect(1)
方法调用。unmet
show pkg…
dpkg --print-avail
,它展示命名包的记录。search regex…
--full
被指定,那么会为每个匹配的包产生和show
一样的输出,如果--names-only
被指定,长表述不会被搜索,只会搜索包名和被提供的包。depends pkg…
rdepends pkg
pkgnames [prefix]
--generate
一起使用。dotty pkg
APT::Cache::GivenOnly
选项。
xvcg pkg
policy [pkg…]
madison pkg…
所有命令现象都可以通过配置文件来设置,描述指明了要设置的配置项。对于布尔类型的选项,你可以使用一些选项来覆盖配置文件,比如“-f-, --no-f, -f=no”或者其他的变体。
-p, --pkg-cache
-s, --src-cache
-q, --quiet
-q=#
来设置安静等级,这会覆盖配置文件。-i, --important
unmet
和depends
一起使用。会使得只有依赖和预依赖项被打印。–no-pre-depends, --no-depends, --no-recommends, --no-suggests,–no-conflicts, --no-breaks, --no-replaces, --no-enhances
depends
和rdepends
打印所有的依赖项。这可以通过这些标志来调整,也就是会省略特定的依赖类型。–implicit
depends
和rdepends
只打印元信息中明确指出的依赖项。带上这个标志,会把发现的隐含的依赖项也打印出来。一个冲突:foo之类的表明这个包的foo与来自其他架构的包的foo冲突。-f, --full
-a, --all-versions
--no-all-versions
。如果--no-all-version
被指定,只有候选的版本会被展示(也就是选择被安装的那个版本)。这个选项只对show
适用。-g, --generate
--no-generate
。–names-only, -n
–all-names
pkgnames
打印所有的名字,包括虚拟包和缺失的依赖项。–recurse
depends
和rdepends
递归,以便所有提及的包都被打印一次。–installed
depends
和rdepends
的输出限制在已经安装的包。–with-source-filename
*.deb
、*.dsc
、*.changes
、源包、包、源包目录。文件会仅根据它们的名字来匹配,而不是它们的内容!-h, --help
-v, --version
-c, --config-file
APT-CONFIG
环境变量。语法信息参阅apt.conf(5)。/etc/apt/sources.list
/etc/apt/sources.list.d/
/var/lib/apt/lists/
/var/lib/apt/lists/partial/
apt.conf(5),sources.list(5),apt-get(8)
apt-cache正常操作后返回0,返回十进制100表示错误。
APT bug page[3]. If you wish to report a bug in APT, please see /usr/share/doc/debian/bug-reporting.txt or the reportbug(1) command.
Jason Gunthorpe
APT team
GraphViz
http://www.research.att.com/sw/tools/graphviz/
VCG tool
http://rw4.cs.uni-sb.de/users/sander/html/gsvcg1.html
APT bug page
http://bugs.debian.org/src:apt
APT 2.2.4 04 April 2019 APT-CACHE(8)