如何在 Linux 中列出某个存储库中已安装的软件包

[ad_1]

我们已经知道如何 列出已安装的存储库 在类 Unix 操作系统中。 今天,让我向您展示如何从命令行列出 Linux 中某个存储库中已安装的软件包。 当您想知道哪些包来自哪些存储库时,这可能很有用。

内容

  1. 列出 Linux 中某个存储库中已安装的软件包
    1. Arch Linux
    2. RHEL/CentOS:
    3. Debian / Ubuntu / Linux Mint
    4. SUSE / openSUSE
    5. 帮助我们帮助您:

列出 Linux 中某个存储库中已安装的软件包

Arch Linux

在 Arch Linux 及其衍生产品如 Antergos、Manjaro Linux 中,运行以下命令以了解某个存储库中已安装包的列表。

$ paclist community

上面的命令将列出已安装的包 社区 Arch Linux 中的存储库。

样本输出:

acpi 1.7-1
acpid 2.0.28-1
arj 3.10.22-11
at 3.1.20-3
atril 1.18.0-1
bamf 0.5.3-1
blueman 2.0.4-3
blur-effect 1.1.2-1
.
.
.
wpscan 1:2.9.2-3
xcur2png 0.7.1-4
yaml-cpp 0.5.3-3
youtube-dl 2017.06.05-1
zathura 0.3.7-1
zathura-pdf-poppler 0.2.7-1
zeromq 4.2.1-1
zim 0.66-1

或者,如果您只想显示已安装包的名称而不显示版本号,可以使用以下命令。

$ awk '{print $1}' <(paclist community)

RHEL/CentOS:

在 RHEL 及其克隆(如 CentOS、Scientific Linux)中,使用以下命令查看已安装的软件包:

$ yum list installed | grep @epel

此命令将列出已安装的软件包 EPEL 存储库。

dnf.noarch 0.6.4-2.el7 @epel 
dnf-conf.noarch 0.6.4-2.el7 @epel 
dnf-plugins-core.noarch 0.1.5-3.el7 @epel 
epel-release.noarch 7-9 @epel 
libcomps.x86_64 0.1.6-13.el7 @epel 
python-dnf.noarch 0.6.4-2.el7 @epel 
python-libcomps.x86_64 0.1.6-13.el7 @epel

您还可以使用从某个存储库获取已安装软件包的列表 yumdb 命令。 默认情况下未安装 Yumdb。 您需要安装 yum-utils 软件包才能使用 yumdb 命令。

$ sudo yum install yum-utils

现在,使用 yumdb 命令列出来自特定存储库的已安装包。

$ yumdb search from_repo epel

上面的命令将显示从 EPEL 存储库中安装的包。

dnf-0.6.4-2.el7.noarch
 from_repo = epel

dnf-conf-0.6.4-2.el7.noarch
 from_repo = epel

dnf-plugins-core-0.1.5-3.el7.noarch
 from_repo = epel

epel-release-7-9.noarch
 from_repo = epel

libcomps-0.1.6-13.el7.x86_64
 from_repo = epel

python-dnf-0.6.4-2.el7.noarch
 from_repo = epel

python-libcomps-0.1.6-13.el7.x86_64
 from_repo = epel

此外,您可以使用 awk 命令以打印友好格式打印输出,如下所示。

$ yumdb search from_repo epel* |awk -F"n" '{ RS=""; print $1 }'

这里, 温暖的 是 REPOID。 您可以通过运行以下命令来获取 reoid:

$ yum repolist

回购查询 是另一个命令,用于列出基于 YUM 的系统中某个存储库中已安装的包。 请注意,您需要安装 yum-utils 软件包才能使用 repoquery 命令。

要使用 reposquery 从 EPEL 存储库中列出已安装的包,只需运行:

$ repoquery -a --installed --qf "%{ui_from_repo} %{name}" | grep '^@epel'

我的 CentOS 7 服务器系统的示例输出。

@epel dnf
@epel dnf-conf
@epel dnf-plugins-core
@epel epel-release
@epel libcomps
@epel python-dnf
@epel python-libcomps

推荐下载免费指南:“您应该购买哪种类型的 Linux 台式机或笔记本电脑?”

Debian / Ubuntu / Linux Mint

在基于 APT 的系统中,您可以从特定存储库中找到已安装软件包的列表,例如 码头工人,使用命令:

$ aptitude search "?origin (docker) ?installed"
i   containerd.io                          - An open and reliable container runtime          
i   docker-ce                              - Docker: the open-source application container en
i   docker-ce-cli                          - Docker CLI: the open-source application containe

如果你想列出 所有套餐 来自 PPA,只需执行以下操作:

$ grep ^Package: /var/lib/apt/lists/ppa.launchpad.net_*_Packages

样本输出:

/var/lib/apt/lists/ppa.launchpad.net_linrunner_tlp_ubuntu_dists_xenial_main_binary-amd64_Packages:Package: tp-smapi-dkms
/var/lib/apt/lists/ppa.launchpad.net_linrunner_tlp_ubuntu_dists_xenial_main_binary-amd64_Packages:Package: tlp
/var/lib/apt/lists/ppa.launchpad.net_linrunner_tlp_ubuntu_dists_xenial_main_binary-amd64_Packages:Package: tlp-rdw
/var/lib/apt/lists/ppa.launchpad.net_linrunner_tlp_ubuntu_dists_xenial_main_binary-i386_Packages:Package: tp-smapi-dkms
/var/lib/apt/lists/ppa.launchpad.net_linrunner_tlp_ubuntu_dists_xenial_main_binary-i386_Packages:Package: tlp
/var/lib/apt/lists/ppa.launchpad.net_linrunner_tlp_ubuntu_dists_xenial_main_binary-i386_Packages:Package: tlp-rdw

上述命令将列出 Ubuntu 系统上所有 PPA 的包。

此外,您可以使用以下命令列出存储库中的所有包:

$ grep Package /var/lib/apt/lists/in.archive.ubuntu.com_ubuntu_dists_xenial_multiverse_*_Packages

此命令将列出来自的包 多元宇宙 存储库。

  • 如何在安装之前检查 Linux 软件包版本
  • 如何在 Linux 中列出属于特定组的已安装软件包
  • 如何在 Linux 中查找具有已安装大小的已安装应用程序

SUSE / openSUSE

齐珀 使得从某个存储库中列出已安装的包变得更加容易 在 SUSE 中,openSUSE 系统。

您需要做的就是打开终端并运行以下命令。

$ zypper pa -ir <repo-name_or_number>

您可以使用以下命令找到存储库名称或其编号:

$ zypper lr

样本输出:

# | Alias | Name | Enabled | GPG Check | Refresh
--+---------------------+------------------------------+---------+-----------+--------
1 | repo-non-oss | openSUSE-leap/42.1-Non-Oss | Yes | (r ) Yes | Yes 
2 | repo-oss | openSUSE-leap/42.1-Oss | Yes | (r ) Yes | Yes 
3 | repo-update | openSUSE-42.1-Update | Yes | (r ) Yes | Yes 
4 | repo-update-non-oss | openSUSE-42.1-Update-Non-Oss | Yes | (r ) Yes | Yes

例如,以下命令将列出“repo-oss”存储库中的包:

$ zypper search -ir repo-oss

或者,只需使用存储库编号,如下所示。

$ zypper search -ir 2

样本输出:

Loading repository data...
Reading installed packages...

S | Name | Summary | Type 
--+--------------------------------------------+-------------------------------------------------------------------------+------------
i | Apper | KDE application and package management tool | application
i | Firefox | Web Browser | application
i | GParted | Create, reorganize, and delete partitions | application
i | Hugin batch processor | A GUI queue manager for stitching multiple hugin projects | application
.
.
.
i | zisofs-tools | User tools for zisofs | package 
i | zypp-plugin-python | Helper that makes writing ZYpp plugins in python easier | package 
i | zypper-aptitude | aptitude compatibility with zypper | package 
i | zypper-log | CLI for accessing the zypper logfile | package

参考:

  • 服务器故障
  • 阿斯库本图

感谢您的光临!

帮助我们帮助您:

  • 订阅我们的电子邮件通讯: 立即注册
  • 支持 OSTechNix: 通过贝宝捐款
  • 下载免费的电子书和视频: TradePub 上的 OSTechNix
  • 联系我们: 红迪网 | Facebook | 推特 | 领英 | RSS订阅

祝你有美好的一天!!

APTawkgrepLinuxList Installed Packages包管理包管理器PaclistPacmanRepoqueryYUMZypper

[ad_2]

Related Posts