如何列出所有已安装的软件包


1884

我想将所有已安装软件包的列表输出到文本文件中,以便我可以查看它并批量安装在另一个系统上。我该怎么做?


7
这里已经回答
西蒙·奎格利

2
哇,
仔细研究

2
如何通过这样的文本文件在新系统上进行批量安装?
极乐世界

2
@Madivad这些包经理曾经应该使生活更轻松...
勒内Nyffenegger

Answers:


2135

Ubuntu 14.04及更高版本

aptUbuntu 14.04及更高版本上的工具使此操作非常容易。

apt list --installed

旧版本

要获取本地安装的软件包的列表,请在终端中执行以下操作:

dpkg --get-selections | grep -v deinstall

-v标记“反转” grep以返回不匹配的行)

要获取已安装的特定软件包的列表:

dpkg --get-selections | grep postgres

要将列表保存到packages桌面上称为的文本文件中,请在终端中执行以下操作:

dpkg --get-selections | grep -v deinstall > ~/Desktop/packages

或者,只需使用

dpkg -l

(您无需以超级用户身份运行任何这些命令,因此sudo此处没有必要或任何其他变体)


37
然后,在安装到新计算机上时,执行cat ~/Desktop/packages > sudo dpkg --set-selections && sudo apt-get dselect upgrade 源代码
koanhead 2010年

13
自2006年以来,dpkg的语法可能已稍有更改,因为该命令对我@@ ananhead无效。sudo dpkg --set-selections < ~/Desktop/packages && sudo apt-get -u dselect-upgrade绝招。
詹姆斯

218
请注意,这不会跟踪用户明确安装了哪些软件包以及哪些软件包作为依赖项安装。这意味着,如果使用此方法在另一台计算机上重新创建设置,则在删除给定程序包时,apt将无法删除不需要的依赖项。
直觉

73
社区无法更好地理解@intuited的评论,这是令人遗憾和惊奇的。在给出建议仅在新的ubuntu版本上重新加载旧软件包不是一个好主意之前,更具“高评价”的贡献者是否会停止思考呢?使用所有的dpkg选项,我仍然看不到一个用户可以拉出“明示”安装的软件包,以便可以重新加载THAT列表并允许安装其依赖项的选项。我很想知道-请分享该信息。同时,列出您真正需要重新安装并运行的软件包的列表
Ricalsin 2013年

62
我们都知道linux可以区分没有照片内存的人,但是严重的是apt list installed。有一天,我们应该停止系统地失败“保持简单易行”的原则。

413

要获取仅已明确安装的软件包(而不仅仅是作为依赖项安装),可以运行

aptitude search '~i!~M'

这还将包括您可能需要的简短描述。如果没有,还添加-F '%p'karthick87提到的option 。


似乎还有另一个选择是复制file /var/lib/apt/extended_states,它是这种格式的文本文件数据库:

Package: grub-common
Architecture: amd64
Auto-Installed: 0

Package: linux-headers-2.6.35-22-generic
Architecture: amd64
Auto-Installed: 1

Auto-Installed: 0 表示软件包已明确安装,而不仅仅是依赖关系。


52
这应该是正确的答案。为什么列出依赖项?
Stavros Korokithakis 2012年

13
应该是答案,但是不幸是,由于当前使用Multiarch (正在修复),使用aptitude有点不可靠。仍然+1表示仅列出显式安装的软件包以及执行此操作的方法(尽管当前在11.10+上不起作用)。
gertvdijk 2013年

4
@intuited为“精确”修复(已发布)。:)
gertvdijk 2013年

11
这列出了所有软件包,而不仅仅是在Ubuntu 13.10上手动安装的软件包。
伊蒙·尼邦

5
有没有办法达到相同的结果apt-get
哈维尔·阿里亚斯

203

要列出通过apt命令有意安装的所有软件包(不作为依赖项),请运行以下命令:

(zcat $(ls -tr /var/log/apt/history.log*.gz); cat /var/log/apt/history.log) 2>/dev/null |
  egrep '^(Start-Date:|Commandline:)' |
  grep -v aptdaemon |
  egrep '^Commandline:'

这提供了一个基于时间的反向视图,其中首先列出了较旧的命令:

Commandline: apt-get install k3b
Commandline: apt-get install jhead
...

安装数据还显示了突触的用法,但没有详细信息(与安装日期相同):

(zcat $(ls -tr /var/log/apt/history.log*.gz); cat /var/log/apt/history.log) 2>/dev/null |
  egrep '^(Start-Date:|Commandline:)' |
  grep -v aptdaemon |
  egrep -B1 '^Commandline:'

提供以下内容:

Start-Date: 2012-09-23  14:02:14
Commandline: apt-get install gparted
Start-Date: 2012-09-23  15:02:51
Commandline: apt-get install sysstat
...

3
或(使用zgrep并删除更新消息):zgrep -hE '^(Start-Date:|Commandline:)' $(ls -tr /var/log/apt/history.log*.gz ) | egrep -v 'aptdaemon|upgrade' | egrep -B1 '^Commandline:'
belacqua 2013年

3
这种方法会错过安装了dpkg??的软件包吗?
drevicko 2013年

5
上面的简单答案对一般用户来说是好的。到目前为止,此方法是回溯到计算机的所有自定义设置的最佳方法,因为它还显示了从基本映像中删除或添加的内容,并按执行顺序列出了它们,并帮助您记住哪个是正确的顺序将它们添加回另一个系统。
AllGamer 2014年

3
@drevicko您是正确的,它没有列出与dpkg一起安装的软件包
Steve Buzonas 2015年

3
这对于保持井井有条非常方便
。– JeremyFelix 2016年

191

创建当前安装的软件包的备份:

dpkg --get-selections > list.txt

然后(在另一个系统上)从该列表还原安装:

dpkg --clear-selections
sudo dpkg --set-selections < list.txt

要摆脱陈旧的软件包:

sudo apt-get autoremove

要像在备份时一样进行安装(即安装设置的软件包dpkg --set-selections):

sudo apt-get dselect-upgrade

5
有关在另一台计算机上还原的重要提示。+1。
Drew Noakes 2013年

15
在2台不同的ubuntu 12.04机器之间迁移时,这种方法破坏了我的系统。我花了一段时间才意识到自己ubuntu-desktop被卸载了-可能是由于dpkg命令之一。小心,花了我几个小时才能修复损坏!
Karl Frisk 2013年

1
有时,系统会更新您特别希望系统永远不要触摸的应用程序,请在命令末尾执行此操作sudo apt-mark hold name-your-package 。这将防止apt-get升级到当前版本,这是更新过程的默认版本。
法伦

77
apt-mark showmanual

手册页状态:

将打印手动安装的软件包列表

因此,它应该仅给出明确安装的软件包的列表(尽管其中包括默认初始安装中包含的软件包),但由于要安装这些软件包而没有包括所有依赖项。

要将结果输出到文本文件中:

apt-mark showmanual > list-manually-installed.txt

在Debian上,“ apt-mark showmanual”不适用于“ squeeze”,但适用于“ wheezy”
Wadih M.15./10/5

11
像大多数其他答案一样,apt-mark showmanual并非如此。它还列出了大量自动安装的软件包,可能是基本安装的一部分。
mivk

8
很好的问题是已安装的软件包,这使所有已安装的软件包减去自动安装的依赖项。它确实将初始软件包作为初始安装的一部分。我想您可以在全新安装上运行此命令以获得默认安装的列表,然后从中减去该值以查看差异。
蒂姆·迪斯达尔

5
没有人提到这种替代方法来列出手动安装的软件包:apt list --manual-installed
Pablo A

41

dpkg-query(而不是dpkg --get-selections,其中列出了一些未安装的软件包),如下所示:

dpkg-query -W -f='${PackageSpec} ${Status}\n' | grep installed |  sort -u | cut -f1 -d \ > installed-pkgs

要么:

dpkg -l | grep ^ii | sed 's_  _\t_g' | cut -f 2 > installed-pkgs

# for pkg in `cat installed-pkgs`; do apt-get install -y $pkg; done在第二个系统中键入内容,以便安装软件包。
user9869932 2015年

1
@julianromera:apt-get install -y $(< installed-pkgs)它将使apt-get只运行一次并同时处理所有依赖项。
jamadagni

@julianromera ...纠正我,如果我弄错了,但是在安装之前构建具有依赖项的应用程序通常是sudo apt-get build-dep name-package; sudo apt-get install name-package; 吗?
法伦

39

要列出所有已安装的软件包,

dpkg -l |awk '/^[hi]i/{print $2}' > 1.txt

要么

aptitude search -F '%p' '~i' > 1.txt

要么

dpkg --get-selections > 1.txt

注意:
您将在主文件夹中得到结果1.txt文件,或者您可以指定自己的路径。


35

您可以使用Synaptic来保存已安装软件包的当前状态。在Synaptic中,选择“文件/保存标记”,输入要将状态保存到的文件名,并确保选中“保存完整状态,不仅更改”框。

可以使用Synaptic中的“文件/读取标记”将由此保存的文件加载到新计算机中。


34

我建议使用蓝图。即使它是为服务器设计的,也可以在台式机上使用。它将创建一个shell脚本/ chef / puppet,您可以使用该脚本来重新安装所有软件包。


我没有尝试使用完整的镜像,但是只有考虑配置文件的事实真棒。我一直在寻找这样的工具已有一段时间了,非常感谢!
tbolender 2014年

33

您想立即在12.04那里重新安装软件包,对吗?

如果是这样,这非常容易。您需要一个“ Ubuntu单点登录帐户”。(在重新安装之前创建它,以便同步您的系统。)

  1. 转到软件中心,然后在“文件”菜单下查找“在计算机之间同步...”选项。

  2. 当您单击它时,您将看到计算机已注册以及计算机上所有应用程序的列表。

  3. 当您全新安装时,该计算机将被视为新计算机。

  4. 您只需要登录Ubuntu帐户,就会显示以前的计算机。

  5. 点击它; 您将获得所有应用程序的列表。在要安装的应用上选择“安装”。


我在全新安装中为计算机设置了相同的名称,以防止每次都从Ubuntu One服务器大量下载。您认为这对我有用吗?
Alen

32

还有一个名为Aptik的工具(命令行和GUI),可以帮助您查看所有已安装软件包的列表,并可以选择/取消选择其中一些软件包,创建备份列表,然后在其中还原同一组软件包。另一个系统。

安装:

sudo add-apt-repository -y ppa:teejee2008/ppa
sudo apt-get update
sudo apt-get install aptik

更多信息:https : //teejeetech.in/aptik/

在此处输入图片说明

从屏幕快照中可以看到,Aptik 允许您备份和还原PPA,这对于安装某些已安装的软件包当然是必需的。


如果你想在GUI,您必须安装apt-get install aptik-gtk以及
Maduka Jayalath

30

APT克隆。该软件包可用于在基于apt的系统上克隆/恢复这些软件包。

  • 它将保存/恢复软件包,sources.list,密钥环和自动安装状态。
  • 它还可以使用dpkg-repack保存/恢复不再下载的软件包。

资源: man apt-clone

ubiquity(Ubuntu安装程序)将APT克隆用于升级过程。它比dpkg --get-selections解决方案好得多,因为:

  1. 它保留所有存储库信息。
  2. 它跟踪自动安装了哪些软件包。
  3. 它允许重新打包本地安装的DEB文件。

如何使用

  1. 安装

    sudo apt-get install apt-clone
    
  2. 进行备份

    sudo apt-clone clone path-to/apt-clone-state-ubuntu-$(lsb_release -sr)-$(date +%F).tar.gz
    
  3. 恢复备份

    sudo apt-clone restore path-to/apt-clone-state-ubuntu.tar.gz
    

    还原到较新的版本:

    sudo apt-clone restore-new-distro path-to/apt-clone-state-ubuntu.tar.gz $(lsb_release -sc)
    

它制作了简单的压缩tar文件,可以轻松编辑和查看,然后再还原到其他计算机上。这里是其结构的一个例子:

/
├── etc
│   └── apt
│       ├── preferences.d
│       ├── sources.list
│       ├── sources.list.d
│       │   ├── anton_-ubuntu-dnscrypt-vivid.list
│       │   ├── maarten-baert-ubuntu-simplescreenrecorder-vivid.list
│       │   └── megasync.list
│       ├── trusted.gpg
│       └── trusted.gpg.d
│           ├── anton__ubuntu_dnscrypt.gpg
│           ├── anton__ubuntu_dnscrypt.gpg~
│           ├── maarten-baert_ubuntu_simplescreenrecorder.gpg
│           └── maarten-baert_ubuntu_simplescreenrecorder.gpg~
└── var
    └── lib
        └── apt-clone
            ├── extended_states
            ├── installed.pkgs
            └── uname

26

在Unix StackExchange上一个很好的解释,描述了如何使用aptitude列出未安装为依赖项的软件包,以及如何将该列表与Ubuntu版本的默认软件包列表进行比较。

要获取台式机版本12.04及更高版本的清单文件,请访问此网站,选择您的发行版,然后在CD映像下方滚动到“文件”部分。您会找到与您的体系结构相匹配的“ ubuntu-12.04.4-desktop-amd64 + mac.manifest”之类的内容。

对于服务器版本,您需要从用于安装原始系统的ISO中获取清单文件。对于VPS或云服务器,您的提供商可能使图像可用,或者您可能需要联系它们。

这是一个使用引用的帖子中的代码的示例,以及对要在新服务器上安装的修改的示例。

旧服务器(其他帖子的代码,输出保存到文件):

aptitude search '~i !~M' -F '%p' --disable-columns | sort -u > currently-installed.list
wget -qO - http://mirror.pnl.gov/releases/precise/ubuntu-12.04.3-desktop-amd64.manifest \
  | cut -f1 | sort -u > default-installed.list
comm -23 currently-installed.list default-installed.list > user-installed.list

在新服务器上,使用scp复制文件,然后使用sed将'install'附加到每一行(-i执行内联替换)。然后,您可以将列表用作“ dpkg --set-selections”的输入,并使用apt-get安装软件包:

scp user@oldserver:user-installed.list .
sed -i 's/$/\tinstall/' user-installed.list
sudo dpkg --set-selections < user-installed.list
sudo apt-get dselect-upgrade

在开始此任务之前,建议您阅读并理解本文开头提到的所有内容,然后查阅aptitude参考指南以获取有关搜索模式的详细信息。


25

您可以查看下面的apt日志/var/log/apt/和下面的dpkg日志/var/log/

您可以通过以下命令获取已安装软件包的列表:

dpkg -l | grep '^ii '

23

我很惊讶上面没有提到apt-cache专门为此目的设计的命令...

apt-cache pkgnames

有关更多信息,请运行apt-cache --help

** apt-cache是​​用于查询信息的低级工具
从APT的二进制缓存文件

命令:
   gencaches-构建包和源缓存
   showpkg-显示单个软件包的一些常规信息
   showsrc-显示源记录
   统计-显示一些基本统计数据
   转储-以简洁的形式显示整个文件
   dumpavail-将可用文件打印到标准输出
   未满足-显示未满足的依赖关系
   搜索-在软件包列表中搜索正则表达式模式
   show-显示包装的可读记录
   取决于-显示软件包的原始依赖性信息
   rdepends-显示包的反向依赖关系信息
   pkgnames-列出系统中所有软件包的名称
   dotty-为GraphViz生成包图
   xvcg-生成xvcg的程序包图
   策略-显示策略设置

选项:
  -h此帮助文本。
  -p =?程序包缓存。
  -s =?源缓存。
  -q禁用进度指示器。
  -i仅显示unmet命令的重要部门。
  -c =?阅读此配置文件
  -o =?设置任意配置选项,例如-o dir :: cache = / tmp
有关更多信息,请参见apt-cache(8)和apt.conf(5)手册页。
**

5
TLDR;我最终发现,它apt --installed list给出了最好的结果(如上面的最佳答案所示。尽管apt-cache pkgnames乍一看似乎可以解决问题,但它列出了“系统中的所有软件包”(根据上面的帮助文本),其中还包括易于了解的软件包,但实际上并没有安装有一个--installed选项,但它似乎并没有一起工作pkgnames
sxc731

2
apt-cache pkgnames | wc -l提供55909软件包(系统知道),而aptitude search '~i!~M' | wc -l给出2160(明确安装的软件包,没有依赖性)。
knb


18

以下命令还将列出所有已安装的软件包,

grep ' installed ' /var/log/dpkg.log /var/log/dpkg.log.1 | awk '{print $5}' | sort -u

那里的.1表示日志已轮换,如果是这种情况,那么最好grep /var/log/dpkg.log*获取所有轮换的日志。
史蒂夫·布佐纳斯

17

帮助此社区Wiki-添加最新解决方案。


dpkg,xargs和apt-get

此命令应完成包含已安装软件包的文本文件的创建:

dpkg -l | awk  '{print $2}' > package_list.txt

要完成列出软件包的批量安装,您需要编辑“ package_list.txt”。使用文本编辑器删除文件顶部的怪异行。然后,您可以使用以下命令从创建的文件中安装软件包:

xargs < package_list.txt apt-get install -y

apt-cache,xargs和apt-get

仅当您希望使用列表安装所有当前软件包(包括自动安装的软件包等)时,才使用此方法。

将“ apt-cache pkgnames”的响应输出到我们将简单命名为“ package_list.txt”的文件。您可以使用以下方法完成此操作:

apt-cache pkgnames > package_list.txt

然后,当您要从“ package_list.txt”安装软件包时,可以使用以下命令:

xargs < package_list.txt apt-get install -y

apt-mark,xargs和apt-get

我们可以使用该命令apt-mark showmanual提供手动或最初随Ubuntu安装的软件包列表。我们将其输出到文件中,我们将其称为“ package-list.txt”。使用此命令可以完成以下任务:

apt-mark showmanual > package-list.txt

下面是用于从文件“ package_list.txt”安装软件包的命令。

xargs < package_list.txt apt-get install -y

Aptik迁移实用程序

实用程序,用于在升级/重新安装基于Ubuntu的发行版后简化软件包的重新安装。
[ 启动板| Aptik ]

有关Aptik的信息,请尝试访问其官方页面,有关屏幕截图,请单击此处或查看本节的结尾。

安装Aptik很简单。跟着这些步骤:

  1. 通过以下方式添加 PPA:
    sudo add-apt-repository -y ppa:teejee2008/ppa

  2. 使用以下命令更新 apt。
    sudo apt-get update

  3. 使用以下命令安装 Aptik:
    sudo apt-get install aptik

Aptik迁移实用程序v16.5.2



1
来自apt-mark showmanualBash,Unity和Xorg等的输出。他们应该在那里吗?
wjandrea

@wjandrea'apt-mark showmanual'的输出也包括我生成的列表中的Bash&Unity。这应该是正常的,因为该命令列出了手动安装和最初使用Ubuntu安装的安装程序。
您的朋友大卫(David)

16

要将已安装软件包的列表保存到名为的文件中installed_packages.txt,请运行:

dpkg-query --list >> installed_packages.txt

3

我认为有趣的是要注意apt list --installeddpkg-query --list实际使用/var/lib/dpkg/status后面称为的文件,其中有关软件包的所有信息都是胡须。

因此,如果您只想处理软件包的超级扩展列表cat /var/lib/dpkg/status

注意:请勿更改/var/lib/dpkg/status文件。


3

除了APT软件包外,如今许多GUI软件包也都作为snap分发。

如果在中找不到您的软件包apt list --installed,请尝试snap list

$ snap list

Name                  Version                     Rev   Tracking  Publisher       Notes
gimp                  2.10.10                     165   stable    snapcrafters    -
gnome-calculator      3.32.1                      406   stable/…  canonical✓      -
keepassxc             2.4.1                       267   stable    keepassxreboot  -
...

添加/snap/bin到PATH 也是一个好主意,因此您可以从终端启动它们(对于非root用户自动完成)。


1

该软件包dctrl-tools提供了grep-status获取系统中标记为已安装软件包的列表的工具:

sudo apt install dctrl-tools

用法:

grep-status -FStatus -sPackage -n   "install ok installed"

见: man dctrl-tools


1

https://www.rosehosting.com/blog/list-all-installed-packages-with-apt-on-ubuntu/

1.列出Ubuntu上已安装的软件包

要列出计算机上已安装的软件包,可以使用以下命令:

sudo apt list --installed

该命令的输出将与以下命令非常相似,具体取决于当前安装的软件包:

Listing...
acl/xenial,now 2.2.52-3 amd64 [installed]
adduser/xenial,xenial,now 3.113+nmu3ubuntu4 all [installed]
apache2/xenial-updates,xenial-security,now 2.4.18-2ubuntu3.1 amd64 [installed]
apache2-bin/xenial-updates,xenial-security,now 2.4.18-2ubuntu3.1 amd64 [installed,automatic]
apache2-data/xenial-updates,xenial-updates,xenial-security,xenial-security,now 2.4.18-2ubuntu3.1 all [installed,automatic]
apache2-doc/xenial-updates,xenial-updates,xenial-security,xenial-security,now 2.4.18-2ubuntu3.1 all [installed]
apache2-utils/xenial-updates,xenial-security,now 2.4.18-2ubuntu3.1 amd64 [installed]
apparmor/xenial-updates,now 2.10.95-0ubuntu2.5 amd64 [installed,automatic]
apt/xenial-updates,now 1.2.19 amd64 [installed]
apt-utils/xenial-updates,now 1.2.19 amd64 [installed]
...

2.使用LESS程序

要轻松读取整个输出,可以使用该less程序。

sudo apt list --installed | less

3.使用GREP命令

您可以使用该grep程序通过输出查找特定的程序包 。

sudo apt list --installed | grep -i apache

4.列出所有包含Apache的软件包

上面命令的输出将列出apache名称中包括的所有软件包 。

apache2/xenial-updates,xenial-security,now 2.4.18-2ubuntu3.1 amd64 [installed]
apache2-bin/xenial-updates,xenial-security,now 2.4.18-2ubuntu3.1 amd64 [installed,automatic]
apache2-data/xenial-updates,xenial-updates,xenial-security,xenial-security,now 2.4.18-2ubuntu3.1 all [installed,automatic]
apache2-doc/xenial-updates,xenial-updates,xenial-security,xenial-security,now 2.4.18-2ubuntu3.1 all [installed]
apache2-utils/xenial-updates,xenial-security,now 2.4.18-2ubuntu3.1 amd64 [installed]
libapache2-mod-php/xenial,xenial,now 1:7.0+35ubuntu6 all [installed,automatic]
libapache2-mod-php7.0/xenial-updates,now 7.0.13-0ubuntu0.16.04.1 amd64 [installed,automatic]
libapache2-mod-security2/xenial,now 2.9.0-1 amd64 [installed]
libapache2-modsecurity/xenial,xenial,now 2.9.0-1 all [installed]

Apt支持匹配软件包名称的模式以及列出已安装(--installed)软件包,可升级(--upgradeable) 软件包或所有可用(--all-versions)软件包版本的选项。

5.使用DPKG程序

您可以用来列出Ubuntu VPS上已安装软件包的另一种替代方法是该dpkg命令。

sudo dpkg -l

该命令的输出将为您提供信息,例如软件包名称,版本,体系结构以及有关软件包的简短描述。当然,您可以grep再次使用该程序来搜索特定的程序包。

sudo dpkg -l | grep -i apache

输出应如下所示:

ii  apache2                       2.4.18-2ubuntu3.1                     amd64        Apache HTTP Server
ii  apache2-bin                   2.4.18-2ubuntu3.1                     amd64        Apache HTTP Server (modules and other binary files)
ii  apache2-data                  2.4.18-2ubuntu3.1                     all          Apache HTTP Server (common files)
ii  apache2-doc                   2.4.18-2ubuntu3.1                     all          Apache HTTP Server (on-site documentation)
ii  apache2-utils                 2.4.18-2ubuntu3.1                     amd64        Apache HTTP Server (utility programs for web servers)
rc  apache2.2-common              2.2.22-6ubuntu5.1                     amd64        Apache HTTP Server common files
ii  libapache2-mod-php            1:7.0+35ubuntu6                       all          server-side, HTML-embedded scripting language (Apache 2 module) (default)
rc  libapache2-mod-php5           5.5.9+dfsg-1ubuntu4.16                amd64        server-side, HTML-embedded scripting language (Apache 2 module)
ii  libapache2-mod-php7.0         7.0.13-0ubuntu0.16.04.1               amd64        server-side, HTML-embedded scripting language (Apache 2 module)
ii  libapache2-mod-security2      2.9.0-1                               amd64        Tighten web applications security for Apache
ii  libapache2-modsecurity        2.9.0-1                               all          Dummy transitional package
ii  libapr1:amd64                 1.5.2-3                               amd64        Apache Portable Runtime Library
ii  libaprutil1:amd64             1.5.4-1build1                         amd64        Apache Portable Runtime Utility Library
ii  libaprutil1-dbd-sqlite3:amd64 1.5.4-1build1                         amd64        Apache Portable Runtime Utility Library - SQLite3 Driver
ii  libaprutil1-ldap:amd64        1.5.4-1build1                         amd64        Apache Portable Runtime Utility Library - LDAP Driver
.

通过本教程的竞争,您已经成功学习了如何在Ubuntu中列出已安装的软件包。


0

有很多方法可以做到这一点。如果您像我一样使用CentOS,则可以使用以下命令:1. yum list installed 2。rpm -qa

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.