图片来源:https://www.pixiv.net/artworks/101077465
Table of Contents
Debain,Ubuntu,Deepin等使用deb包的发行版
已安装的包
根据文件名(命令名)查找包名
dpkg -S <file> #仅查询本地已安装的包
根据包名查看其所包含文件
dpkg -L <package> #仅查询本地已安装的包
未安装的包
要查找未安装的包需要额外工具 apt-file
(使用 sudo apt install apt-file
安装),使用前可以先更新本地缓存 sudo apt update
根据文件名(命令名)查找包名
apt-file search <file>
根据包名查看其所包含文件
apt-file list <package>
RHEL,Centos,Fedora等使用rpm包的发行版
根据文件名(命令名)查找包名
rpm -qf <file> #仅查询本地已安装的包
或
yum provides <file>
# Fedora22,RHEL8 以及 Centos8 引入了dnf用以取代yum
dnf provides <file>
根据包名查看其所包含文件
rpm -ql <package> #仅查询本地已安装的包
要查询未安装的包所包含的文件需要额外工具 repoquery
(使用 sudo yum install yum-utils
或 sudo dnf install dnf-utils
安装)
repoquery -l <package>
Arch,Manjaro等使用 pacman
的发行版
根据文件名(命令名)查找包名
pacman -Qo <file> #仅查询本地已安装的包
或
pacman -F <file> #在数据库中查找,可以加上'-y'选项先更新数据库
根据包名查看其所包含文件
pacman -Ql <package> #仅查询本地已安装的包
或
pacman -Fl <package> #在数据库中查找,可以加上'-y'选项先更新数据库
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。
一条评论 “Linux查询文件所属包和查看包所包含文件”