如何检查 Linux 中是否安装了特定字体

LinuxLinuxBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

在这个实验中,你将学习如何检查特定字体是否已安装在你的 Linux 系统上。我们将探讨三种实现此目的的关键方法。

首先,你将使用 fc-list 命令列出 Fontconfig 系统已知的所有字体。接下来,你将使用 ls 命令查看标准系统字体目录 /usr/share/fonts,以了解存储在那里的字体文件。最后,你将学习如何使用 fc-cache -v 验证和更新字体缓存,这对于确保系统能够识别新安装的字体至关重要。通过完成这些步骤,你将获得在 Linux 环境中管理和验证字体安装的实用技能。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/BasicSystemCommandsGroup(["Basic System Commands"]) linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux/BasicSystemCommandsGroup -.-> linux/echo("Text Display") linux/BasicFileOperationsGroup -.-> linux/ls("Content Listing") subgraph Lab Skills linux/echo -.-> lab-558756{{"如何检查 Linux 中是否安装了特定字体"}} linux/ls -.-> lab-558756{{"如何检查 Linux 中是否安装了特定字体"}} end

使用 fc-list 列出字体

在这一步中,你将学习如何使用 fc-list 命令列出 Linux 系统上可用的字体。字体对于在屏幕上显示文本至关重要,了解如何列出字体对于各种任务很有用,例如解决显示问题或为应用程序选择特定字体。

fc-list 命令是 Fontconfig 库的一部分,Fontconfig 库是一个用于配置和自定义字体访问的系统。

要列出所有可用的字体,请打开终端并输入以下命令:

fc-list

按下回车键。

你将看到一长串输出,类似于以下内容:

/usr/share/fonts/truetype/liberation/LiberationSans-Regular.ttf: Liberation Sans,Sans:style=Regular
/usr/share/fonts/truetype/dejavu/DejaVuSansMono-BoldOblique.ttf: DejaVu Sans Mono:style=Bold Oblique
/usr/share/fonts/truetype/ubuntu/Ubuntu-R.ttf: Ubuntu:style=Regular
... (还有很多行)

输出中的每一行代表一个字体文件,并提供有关字体的信息,例如其名称和样式。输出格式通常为 文件名: 字体系列,字体系列,...:样式=样式,...

此命令列出了 Fontconfig 所知的所有字体,其中包括系统范围内安装的字体以及可能的用户特定字体。

如果输出过多,也不用担心。目前,目标只是确认命令可以正常工作,并理解它会提供一个可用字体的列表。

使用 ls /usr/share/fonts 检查字体目录

在上一步中,你使用 fc-list 查看了 Fontconfig 所知的所有字体。现在,让我们来看看存储系统级字体的常见目录之一:/usr/share/fonts

/usr/share/fonts 目录是许多 Linux 发行版中用于安装系统所有用户都可使用的字体的标准位置。在这个目录中,你通常会发现按字体类型(如 truetypeopentype)或字体系列组织的子目录。

我们将使用 ls 命令列出这个目录的内容。ls 命令用于列出文件和目录。

打开终端并输入以下命令:

ls /usr/share/fonts

按下回车键。

你将看到 /usr/share/fonts 内的目录和文件列表,类似于以下内容:

X11  cmap  encodings  opentype  truetype  type1

此输出显示了 /usr/share/fonts 内的子目录。这些子目录包含实际的字体文件(如 .ttf.otf 等)。

你可以通过列出其中一个子目录(例如 truetype 目录)的内容来进一步探索:

ls /usr/share/fonts/truetype

按下回车键。

你可能会看到如下输出:

dejavu  liberation  ubuntu  wqy

这显示了 truetype 格式目录中安装的字体系列。你可以继续深入这些目录,查看各个字体文件。

了解字体的存储位置有助于你管理它们,并理解系统如何访问它们。

使用 fc-cache -v 验证字体缓存

在前面的步骤中,你使用 fc-list 列出了字体,并使用 ls 探索了字体目录。Fontconfig 使用缓存来快速访问已安装字体的信息。当你添加或删除字体时,通常需要更新此缓存,以便应用程序能够找到新添加或已删除的字体。

fc-cache 命令用于构建和维护字体信息缓存文件。不带任何选项运行 fc-cache 会更新标准字体目录的缓存。

若要查看更新缓存的过程并验证正在扫描哪些目录,你可以使用 -v 选项以获得详细输出。

打开终端并输入以下命令:

fc-cache -v

按下回车键。

你将看到指示正在扫描哪些目录以及缓存文件写入位置的输出。输出类似于以下内容:

/usr/share/fonts: caching, new cache contents: 100 fonts, 100 dirs
/usr/share/fonts/X11: caching, new cache contents: 0 fonts, 0 dirs
/usr/share/fonts/X11/Type1: caching, new cache contents: 0 fonts, 0 dirs
... (还有很多行)
/var/cache/fontconfig: cleaning cache directory
/home/labex/.cache/fontconfig: cleaning cache directory
fc-cache: succeeded

-v 选项会显示正在处理的目录,并提供缓存过程的详细信息。这有助于确认 Fontconfig 是否在正确的位置查找字体。

在对字体集进行更改后,运行 fc-cache -v 是确保系统字体缓存保持最新状态的好方法。

总结

在本次实验中,你学习了如何检查 Linux 系统上已安装的字体。你首先使用 fc-list 命令显示了 Fontconfig 库所知的所有字体,该命令提供了可用字体及其详细信息的完整列表。

接着,你使用 ls 命令探索了 /usr/share/fonts 目录,这是存储系统级字体的标准位置,从而了解了字体在文件系统中的组织方式。最后,你使用 fc-cache -v 验证了字体缓存,确保 Fontconfig 的内部字体列表是最新的,并反映了系统字体目录中存在的字体。