如何列出 Ubuntu 上已安装的软件包

2023-11-12

在本教程中,我们将向您展示如何列出和过滤 Ubuntu 上已安装的软件包。当您需要在另一台计算机上安装相同的软件包或想要重新安装系统时,了解如何列出 Ubuntu 系统上已安装的软件包会很有帮助。

我们还将向您展示如何检查是否安装了特定的软件包、计算已安装的软件包以及找出已安装软件包的版本。

尽管本教程是针对 Ubuntu 编写的,但相同的说明适用于任何基于 Ubuntu 的发行版,包括 Kubuntu、Linux Mint 和 Elementary OS。

使用 apt 列出已安装的软件包#

apt是包管理系统的命令行界面。它在 Ubuntu 14.04 中引入,结合了最常用的命令apt-get and apt-cache包括列出已安装软件包的选项。

要列出 Ubuntu 系统上已安装的软件包,请使用以下命令:

sudo apt list --installed

从上面的输出中可以看到,该命令打印所有已安装软件包的列表,包括有关软件包版本和体系结构的信息。

包列表很长,最好将输出通过管道传递到less为了更容易阅读:

sudo apt list --installed | less

要查明是否安装了特定的软件包,您可以使用以下命令过滤输出grep 命令。例如,要查明是否screen软件包已安装在我们的系统上,我们将运行:

sudo apt list --installed | grep screen
screen/bionic,now 4.6.2-1 amd64 [installed]

上面的输出显示我们的系统上安装了 screen 版本 4.6.2-1。

使用 dpkg-query 列出已安装的软件包#

如果您运行的是较旧的Ubuntu版本,那么您可以使用dpkg-query列出软件包的命令:

sudo dpkg-query -l | less

该命令将显示所有已安装软件包的列表,包括软件包版本、体系结构和简短描述。

您可以过滤dpkg-query -l输出与grepapt output:

sudo dpkg-query -l | grep package_name

创建所有已安装软件包的列表#

创建 Ubuntu 或 Debian 系统上所有已安装软件包的名称列表并将其保存在名为packages_list.txt,运行以下命令:

sudo dpkg-query -f '${binary:Package}\n' -W > packages_list.txt

现在您已经有了列表,如果您想在新服务器上安装相同的软件包,您可以使用以下命令:

sudo xargs -a packages_list.txt apt install

计算 Ubuntu 机器上安装的软件包数量#

要了解系统上安装了多少个软件包,您可以使用与以前相同的命令,但您可以将其通过管道传输到文件,而不是将输出重定向到文件wc实用程序并计算行数:

sudo dpkg-query -f '${binary:Package}\n' -W | wc -l
544

如您所见,我的 Ubuntu 服务器上安装了 544 个软件包。

结论#

现在您应该知道如何列出和过滤 Ubuntu 系统上已安装的软件包。如果您想了解更多有关apt命令打开你的终端并输入man apt.

如果您有任何疑问,请随时发表评论。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何列出 Ubuntu 上已安装的软件包 的相关文章

  • 在ubuntu 18.04上安装python 2.7

    有没有办法在 Ubuntu 18 04 上安装 Python 2 7 我尝试了这个命令 但它不起作用 sudo apt install python minimal 有没有办法手动安装 我尝试使用 python 2 7 作为不支持 pyth
  • 如何在 Ubuntu 上通过 pip 安装 python3 版本的软件包?

    我两者都有python2 7 and python3 2安装在Ubuntu 12 04 符号链接python链接到python2 7 当我输入 sudo pip install package name 它将默认安装python2的版本pa
  • 使用mongodb+srv配置Mongo

    我在 docker 上启动 mongo 所以默认主机 localhost port 27017 用户名 root密码 example 现在我想通过连接字符串进行连接 mongodb srv root example localhost si
  • pygraphviz,导入错误:未定义的符号:Agundirected

    import pygraphviz Traceback most recent call last File
  • 箭头键变成 Telnet 中的控制字符

    我在 Ubuntu 终端中 并通过 telnet 连接到服务器 现在每当我输入 up 时 它就会变成 A 其他箭头键也变成控制字符 有没有办法可以运行 telnet 以便它理解我的箭头键 这将是一个巨大的帮助 因为我想在我的命令历史记录中向
  • 在 Ubuntu 16.04 中创建虚拟主机

    我已经开始在 laravel 中工作并使用 lampp 我看过很多使用虚拟主机来制作用户友好的 url 的教程 我想在 Ubuntu 16 04 上执行此操作 以下教程对我不起作用 https ourcodeworld com articl
  • EDITLogBack Syslog 不工作 java

    我写了一个简单的项目来在 Ubuntu 中运行日志 方法如下example https examples javacodegeeks com enterprise java logback logback syslog example 应用
  • 如何查明 Ubuntu 上安装了哪个版本的 GTK+?

    我需要确定 Ubuntu 上安装了哪个版本的 GTK 男人似乎不帮忙 这个建议 https stackoverflow com a 126145 会告诉您安装了哪个 2 0 的次要版本 不同的主要版本将具有不同的包名称 因为它们可以在系统上
  • 如何安装和管理多个版本的 R 包

    我正在开发一个使用 R 进行可重现计算的框架 我正在努力解决的一个问题是 某些 R 代码可能在包的 X Y Z 版本中完美运行 但是为什么你在 3 年后尝试重现它 这些包已经更新了 一些功能发生了变化 代码不再运行 此问题还会影响使用包的
  • 无法在 Google Cloud Run 上部署 Ubuntu 20.04 Docker 容器

    我正在尝试通过 Google Cloud Run 部署一个基于 Ubuntu 20 04 的简单的基于 Python 的 Docker 容器 我已经成功构建了映像 但是当我尝试部署 Cloud Run 服务时 出现以下错误 省略了项目详细信
  • 如何更改 Ubuntu 14.04 上的 php-cli 版本?

    我是 Linux 新手 在篡改时破坏了一些 php 设置 如果我执行一个包含以下内容的 php 脚本 phpinfo 它显示 php 版本为 5 6 但通过命令行 如果我运行php v它返回 7 0 版本 我想让两个版本匹配 我怎样才能修复
  • 我需要启用哪些权限才能使 Docker 卷正常工作?

    假设我有一个保存一些数据的 Docker 容器 我希望这些数据能够持续存在 如果容器被停止 删除 升级等 我仍然希望数据位于主机操作系统文件系统上的可访问位置 目前 我的解决方案是创建一个目录 srv service name在我的主机上
  • 如何在ubuntu的conda环境中更改Rstudio中的R版本

    我在基本系统中安装了 R 4 3 和 Rstudio 在 conda 环境中安装了旧版本的 R 4 2 3 命令which R返回环境中安装的 R 的目录 home 用户 miniconda3 envs anndata2ri pip bin
  • 无法在 mysql-apt-config [Ubuntu 14.04] 中选择“确定”

    我使用的是 Ubuntu 14 04 sudo apt get update总是给我这个选项来配置 mysql apt config 我尝试选择版本 按 tab gt 在 确定 上突出显示的键 按 Enter 但没有任何反应 它再次返回并突
  • 在 Ubuntu 中使用 Gstreamer 通过 RTP 协议流式传输 Mp4 视频

    我正在尝试从本地目录获取视频文件 启用来自服务器的流并从客户端捕获这些帧 我使用了以下管道 服务器端 gst launch v filesrc location home gokul Videos Econ TestVideo radioa
  • 让 Rails 生产在端口 80 上运行

    我正在尝试让我的 Rails 应用程序在生产模式下运行 但遇到了一些困难 我正在使用 Passenger 和 apache 并运行 Ubuntu 12 04 我已经配置和创建了生产数据库 并设置了乘客 状态如下 rvmsudo passen
  • ubuntu 16.04.1 LTS 启动 Android 模拟器时崩溃

    我已经尝试过 Android studio 上的 AVD 和 Genymotion 模拟器 我的 ubuntu 16 04 1 在启动 android 模拟器时崩溃 冻结 我的电脑内存是16G 在我于 2016 年 9 月 19 日安装了
  • Ubuntu 上的 Vim:文本渲染错误,奇怪地重复和消失

    不久前我在 ubuntu 12 04 上安装了 vim 有时 当我在代码上运行光标 使用键盘 而不是鼠标 时 文本会消失 就好像渲染字符时出现问题一样 当我再次运行光标时 它通常会重新出现 这似乎是随机发生的 但通常足以让人恼火 为了更清楚
  • 如何通过ssh检查ubuntu服务器上是否存在php和apache

    如何通过ssh检查Ubuntu服务器上apache是 否安装了php和mysql 另外如果安装的话在哪个目录 如果安装了其他软件包 例如 lighttpd 那么它在哪里 确定程序是否已安装的另一种方法是使用which命令 它将显示您正在搜索
  • Docker 错误绑定:地址已在使用中

    当我跑步时docker compose up在我的 Docker 项目中 它失败并显示以下消息 启动用户层代理时出错 监听 tcp 0 0 0 0 3000 绑定 地址已在使用中 netstat pna grep 3000 显示这个 tcp

随机推荐

  • 如何在 Fedora 和 CentOS Stream/RHEL 9/8 上安装 Java 20

    Java 发布周期的一个值得注意的方面是长期支持 LTS 版本和非 LTS 版本之间的区别 LTS 版本 顾名思义 获得 Oracle 的长期支持 并长期提供更新和安全补丁 使其成为优先考虑稳定性和安全性的企业环境的理想选择 相比之下 非
  • 如何在 CentOS/RHEL 6 中使用两个虚拟磁盘设置 RAID-1 阵列

    RAID代表廉价 独立 磁盘冗余阵列 RAID 1 也称为条带化 RAID 1 至少需要两个磁盘 RAID 1 上的最大数据可以存储到 RAID 阵列中最小磁盘的大小 在本文中 我们使用与 VMWare 一起运行的 CentOS 6 5 我
  • 如何在 Ubuntu 18.04 和 16.04 LTS 上安装 Erlang

    Erlang是一种编程语言 用于构建具有高可用性要求的大规模可扩展的软实时系统 Erlang运行时系统内置了对并发 分布式和容错的支持 本教程将帮助您使用 PPA 在 Ubuntu 18 04 和 16 04 上安装 Erlang 第 1
  • 20 个 DevOps 面试问题和答案

    DevOps 已成为现代企业软件开发和部署的重要实践 DevOps 强调开发和运营团队之间的协作 沟通和持续改进 以快速可靠地交付软件变更 在本文中 我们讨论了 20 个常见的 DevOps 面试问题和答案 以帮助您为下一次面试做好准备 您
  • 如何在 Ubuntu 18.04 和 16.04 上安装 FFmpeg

    FFmpeg是用于流式传输音频和视频以及录制和转换的跨平台解决方案 在各种格式之间转换多媒体文件也很有用 FFmpeg 中包含 libavcodec 音频 视频编解码器库 本教程将帮助您通过简单的步骤在 Ubuntu 18 04 LTS 和
  • 用于扫描端口范围的 Bash 脚本

    网络管理员和安全专家经常需要扫描端口来识别开放或封闭的服务并评估其网络的安全性 虽然有 nmap 等强大的工具可用于此目的 但有时您可能需要创建适合您的特定要求的自定义解决方案 在本文中 我们将讨论如何创建用于扫描一系列端口的 Bash 脚
  • pg_restore:[存档器]输入文件似乎不是有效的存档

    如果您在 postgresql 中恢复数据库备份时遇到上述错误 此错误意味着您已以纯文本格式进行备份 Error pg restore archiver input file does not appear to be a valid ar
  • 前 5 名诊断和维护软件工具

    您可以在计算机上安装出色的软件 并且可以非常小心地访问 Internet 上的站点 但是您最终仍不可避免地会遇到软件和 或硬件的一些问题 发生这种情况时 您可以让专业人士追踪问题的根源并解决它 但在您花钱之前 请检查一些优秀的诊断和维护工具
  • 如何在 CentOS 8 上安装 PostgreSQL 服务器

    PostgreSQL是一个对象关系数据库管理系统 以表的形式存储数据 它高度安全可靠 可以轻松存储 访问和检索数据 The pgAdmin是一个功能丰富的基于 Web 的界面 用于 PostgreSQL 的管理 开发和管理 它也是一个开源
  • 什么是毕达哥拉斯定理?

    毕达哥拉斯定理以古希腊数学家毕达哥拉斯的名字命名 是欧几里得几何学的基本原理 该定理在数学和物理学的多个分支中发挥着关键作用 为距离计算 矢量代数和三角学等奠定了基础 毕达哥拉斯定理 公式 毕达哥拉斯定理适用于直角三角形 角为90度 2 弧
  • 如何在Python中连接MySQL

    数据库是任何数据驱动的应用程序或系统的支柱 它们提供了一种组织 检索 更新和操作数据的系统方法 MySQL 是世界上最流行的数据库之一 广泛用于 Web 应用程序和嵌入式数据库系统 另一方面 Python 是最通用且使用最广泛的编程语言之一
  • 如何检查 Angular 版本(应用程序+CLI)

    Angular 是一种流行的 Web 应用程序开发框架 被全球开发人员广泛使用 该框架不断发展 每个版本中都会添加新的特性和功能 作为开发人员 必须跟上 Angular 的最新版本 以确保您的应用程序使用最新功能 并及时了解任何安全修复或错
  • 在 Node.js 中配置 MySQL 连接池的分步指南

    MySQL 是一种广泛使用的开源关系数据库管理系统 RDBMS 用于各种 Web 应用程序 另一方面 Node js 是一种流行的运行时环境 用于在服务器端执行 JavaScript 代码 使用 Node js 和 MySQL 开发 Web
  • 如何在 Apache 中启用服务器端包含 (SSI)

    服务器端包含 SSI 是一种简单的解释型服务器端脚本语言 几乎专门用于 Web 它用于通过在网页中包含 指令 来管理网络内容 这些 指令 由网络服务器解析和执行 例如 它们可以允许将一个或多个文件的内容包含到网络服务器上的网页中 或者显示当
  • 如何在 CentOS / RHEL / Fedora 上安装 Symfony 2 框架

    Symfony 是一个用 PHP 编写的 Web 应用程序框架 它提供了一组可重用的 PHP 组件 Symfony 2 8 是 Symfony 2 框架系列中当前可用的稳定版本 Symfony 为您的应用程序提供 30 个独立组件 本教程将
  • 如何在 Ubuntu 16.04 上安装 Zend 框架

    Zend框架3 是可用于创建应用程序的最新版本 最新版本提供了比以前版本更快的应用程序 Zend 是一个用于开发 Web 应用程序和服务的开源框架 它使用 100 面向对象的代码 本教程将帮助您在 Ubuntu 16 04 LTS 系统上安
  • 如何使用 DNF 从 Fedora 22 升级到 Fedora 23

    软呢帽23已发布并可供下载和安装 本文将帮助您使用以下命令从 Fedora 22 升级到 Fedora 23DNF yum 的替代 命令行实用程序 检查 Fedora 版本 使用以下命令之一检查您当前的 Fedora 系统版本 Fedora
  • 如何创建具有授予权限的新 MySQL 用户

    MySQL 是一个关系数据库管理系统 用于以表格格式存储数据 它为用户帐户和授予权限提供了高度的灵活性 本教程将为您提供创建 MySQL 用户帐户和授予数据库权限的简短概述 创建具有权限的MySQL用户 在这里 我们以对所有数据库拥有完全权
  • 通过贸易展览曝光促进您的业务

    中小企业是每个经济体的支柱 由于多种原因 每个州都应该鼓励和支持此类小公司 首先 这些企业对市场变化和供需失衡的反应速度相当快 其次 中小型企业通常具有社区联系紧密的特点 员工之间相互了解 从而产生更强烈的团结感 所有这些特点都意味着这类业
  • 如何列出 Ubuntu 上已安装的软件包

    在本教程中 我们将向您展示如何列出和过滤 Ubuntu 上已安装的软件包 当您需要在另一台计算机上安装相同的软件包或想要重新安装系统时 了解如何列出 Ubuntu 系统上已安装的软件包会很有帮助 我们还将向您展示如何检查是否安装了特定的软件