我们最近发表了一篇关于批量包安装的文章。同时,我还研究了如何获取已安装在系统上的包信息并找到了一些方法。我将在我们的网站上分享这些方法,并希望帮助其他人。
有很多方法可以检查是否安装了软件包。我找到了7个命令,您可以选择自己喜欢的命令。
如下:
Apt-cache:可用于查询APT缓存或包的元数据。
Apt:是一个功能强大的工具,用于在基于Debian的系统中安装,下载,删除,搜索和管理软件包。
Dpkg-query:查询dpkg数据库的工具。
Dpkg:基于Debian的系统的包管理工具。
其中:返回在终端中输入命令时执行的可执行文件的完整路径。
Whereis:可用于搜索特定命令的二进制文件,源文件和帮助文件。
定位:比find命令更快,因为它使用updatedb数据库搜索,find命令搜索实际系统。
方法一,使用apt-cache命令
apt-cache命令用于从APT内部数据库查询APT缓存和包元数据。它将搜索并显示指定包的信息,包括安装,包版本,源存储库信息等。
以下示例清楚地显示了nano软件包已安装在系统上以及相应安装的版本号。
#apt-cache policy nano
纳米:
安装: 2.9.3-2
候选人: 2.9.3-2
版本表:
*** 2.9.3-2 500
500http://in.archive.ubuntu.com/ubuntu bionic/main amd64包
100/var/lib/dpkg/status
方法二,使用apt命令Apt是一个功能强大的命令行工具,用于安装,下载,删除,搜索,管理包和查询有关包的信息,类似于对libapt-pkg库的所有功能的底层访问。它包含一些与包管理相关但很少使用的命令行功能。
#apt -qq list nano
纳米/仿生,现在2.9.3-2 amd64 [已安装]
方法三,使用dpkg-query命令
Dpkg-query是一个在dpkg数据库中显示包信息列表的工具。
以下示例中输出的第一列ii表示已安装查询包。
#dpkg-query --list | grep -i nano
Ii nano 2.9.3-2 amd64小巧,友好的文本编辑器,灵感来自Pico
方法四,使用dpkg命令
Dpkg(debian软件包)是一个用于安装,构建,删除和管理Debian软件包的工具,但与其他软件包管理系统不同,它不会自动下载和安装软件包或软件包依赖项。
以下示例中输出的第一列ii表示已安装查询包。
#dpkg -l | grep -i nano
Ii nano 2.9.3-2 amd64小巧,友好的文本编辑器,灵感来自Pico
方法五,使用which命令
which命令返回在终端中输入命令时执行的可执行文件的完整路径。当您想要创建桌面快捷方式或指向可执行文件的符号链接时,这非常有用。
which命令仅在当前用户的PATH环境变量配置的目录列表中搜索,而不是在所有用户的目录中搜索。这意味着当您登录自己的帐户时,它将不会在root用户文件或目录中进行搜索。
如果指定的包或可执行路径具有以下输出,则表示已安装,否则不安装。
#哪个纳米
/斌/纳米
方法六,使用whereis命令
whereis命令用于搜索指定命令的相应程序二进制文件,源文件,帮助文件等。
如果指定的包或可执行路径具有以下输出,则表示已安装,否则不安装。
#whereis纳米Nano:/bin/nano/usr/share/nano /usr/share/man/man1/nano.1.gz /usr/share/info/nano.info.gz
方法七,使用locate命令
locate命令比find命令更快,因为它在updatedb数据库中搜索,而find命令搜索实际系统。
为了获取指定的文件,它使用数据库而不是在特定的目录路径中搜索。
locate命令未预先安装在大多数系统上,需要手动安装。
locate使用的数据库会根据计划的任务定期更新。当然,我们也可以手动更新。
如果指定的包或可执行路径具有以下输出,则表示已安装,否则不安装。