使用 fc-list 命令查看字体
fc-list 是 fontconfig 字体库的一部分,它能列出系统中所有已安装的字体的详细信息,包括文件路径、字体名称和样式等。
如果系统提示 fc-list: command not found,说明 fontconfig 软件包没有安装。你需要用 root 权限执行以下命令来安装它:
yum install -y fontconfig
安装完成后,就可以使用 fc-list 命令了。
实用命令示例
以下是一些 fc-list 的常用变体和技巧,可以帮助你更方便地查看字体:
| 需求 | 命令 | 说明 |
|---|---|---|
| 列出所有已安装字体 | fc-list | 列出所有字体,输出信息较全。 |
| 查看中文(或其他语言)字体 | fc-list :lang=zh | :lang= 后跟语言代码,可以筛选出支持该语言的字体。 |
| 仅显示字体名称 | fc-list : family | 只列出字体的名称,输出更简洁。 |
| 搜索特定字体 | `fc-list | grep "SimHei"` |
提示:如果只需要快速浏览已安装的字体,也可以直接查看字体目录
/usr/share/fonts/下的内容,通常那里存放着所有的字体文件。
字体安装
在 CentOS 7 系统中,字体的安装和管理主要通过 fontconfig 和 ttmkfdir 等工具完成。核心思路就是从 A 机器拿到字体文件,复制到 B 机器指定位置,再刷新 B 机器的字体缓存。
A机器:打包并复制字体文件
首先,我们需要把 A 机器的字体文件打包并复制到 B 机器上。可以使用 scp 或 rsync 来完成。
-
打包字体文件(可选但推荐)
在 A 机器上,将所有.ttf,.ttc等字体文件打包,方便传输。# 将所有字体文件打包 tar -czvf fonts_backup.tar.gz /usr/share/fonts/ -
使用
scp命令复制到 B 机器
打包完成后,使用scp命令将文件安全地复制到 B 机器。你需要知道 B 机器的 IP 地址、用户名和密码。# 基本语法:scp 本地文件路径 远程用户名@远程IP:远程目标路径 scp fonts_backup.tar.gz user@<B机器IP>:/home/user/注意:如果 B 机器的 SSH 端口不是默认的 22,需要使用
-P参数指定端口,例如scp -P 2222 fonts_backup.tar.gz ...。
B机器:安装并配置字体
将字体文件传输到 B 机器后,就可以在 B 机器上进行安装和配置了。整个过程不需要重启系统。
-
安装必要工具
确保fontconfig和ttmkfdir已安装,它们是管理和生成字体索引的核心工具。yum install -y fontconfig ttmkfdir -
解压并放置字体
将之前传输的字体包解压,并将其中的字体文件移动到系统字体目录/usr/share/fonts/下,并设置正确的权限。# 解压字体包 tar -xzvf fonts_backup.tar.gz # 进入解压后的目录,将所有字体文件复制到系统目录 cp -r * /usr/share/fonts/ # 设置目录权限 chmod -R 755 /usr/share/fonts/ -
生成字体索引并刷新缓存
执行以下命令,生成字体索引文件(fonts.scale,fonts.dir),并刷新系统字体缓存,使新字体生效。# 进入字体目录 cd /usr/share/fonts/ # 生成字体索引 ttmkfdir # 或者使用以下组合命令 mkfontscale mkfontdir # 刷新字体缓存 fc-cache -fv -
验证字体安装
最后,使用fc-list命令验证字体是否成功安装。fc-list # 如果想只看中文字体,可以使用 fc-list :lang=zh
注意事项
- 权限问题:确保有足够的权限执行命令,如果遇到权限错误,请在命令前加
sudo。 - 路径问题:请确认字体文件实际存放的路径,例如有些是
/usr/share/fonts,有些则是/usr/shared/fonts,请根据实际情况调整。 - 文件格式:确保复制的字体文件格式是 Linux 支持的,如
.ttf,.ttc,.otf等。 - 离线环境:如果你的 B 机器无法联网,可以在 A 机器(或任意有网络的机器)上下载
fontconfig和ttmkfdir的 RPM 包,然后手动复制到 B 机器进行安装。
-- end --