翻译状态:本文是 Pkgfile 的翻译。上次翻译日期:2019-03-13。如果英文版本有所更改,则您可以帮助同步翻译。
工具pkgfile是检查官方软件仓库中软件包文件的工具。
安装
更新文件数据库:
# pkgfile --update
示例
查找文件 "makepkg" 属于哪个软件包:
$ pkgfile makepkg
core/pacman
$ pkgfile -l archlinux-keyring
core/archlinux-keyring usr/
core/archlinux-keyring usr/share/
core/archlinux-keyring usr/share/pacman/
core/archlinux-keyring usr/share/pacman/keyrings/
core/archlinux-keyring usr/share/pacman/keyrings/archlinux-revoked
core/archlinux-keyring usr/share/pacman/keyrings/archlinux-trusted
core/archlinux-keyring usr/share/pacman/keyrings/archlinux.gpg
这个结果与 pacman -Ql 类似(参考pacman#Querying package databases),只不过这个命令查询的是远程仓库中的软件包。
"Command not found" 钩子
pkgfile 包含一个叫做 "command not found" 的钩子,它会在你键入一个未知命令的时候自动在官方源中搜索。
要在所有的shell中启用它,需要将钩子的 source 添加到你的 shell 的配置文件中。
在 Bash 中启用:
~/.bashrc
source /usr/share/doc/pkgfile/command-not-found.bash
在 Zsh 中启用:
~/.zshrc
source /usr/share/doc/pkgfile/command-not-found.zsh
自动更新
pkgfile 提供了 systemd 服务和 定时器,可以自动同步 pkgfile 数据库。要自动启动,请 启用 pkgfile-update.timer.
默认情况下 pkgfile 每天更新一次,可以通过 编辑单元文件进行配置。