pkgfile (简体中文)

From ArchWiki

翻译状态:本文是 Pkgfile翻译。上次翻译日期:2019-03-13。如果英文版本有所更改,则您可以帮助同步翻译。

工具pkgfile是检查官方软件仓库中软件包文件的工具。

安装

安装软件包pkgfilepkgfile-gitAUR

更新文件数据库:

# pkgfile --update

示例

查找文件 "makepkg" 属于哪个软件包:

$ pkgfile makepkg
core/pacman

列出 archlinux-keyring 包含的所有文件:

$ 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 的配置文件中。

~/.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 每天更新一次,可以通过 编辑单元文件进行配置。