编程技术分享平台

网站首页 > 技术教程 正文

Linux 快速安装当前目录及子目录下的所有字体

xnh888 2025-07-07 23:50:21 技术教程 2 ℃ 0 评论

源码随时更新


文件名为:fonts-install.sh

#!/usr/bin/env bash

##
# 安装当前目录及子目录下的字体
##

set -e

CUSTOM_FONTS="/usr/share/fonts/custom"

[ -d $CUSTOM_FONTS ] || sudo mkdir -p $CUSTOM_FONTS

for EXT in ".otf" ".ttf"; do
  while IFS= read -r -d '' _V; do
      printf "cp font: %s\n" "$_V"
      sudo chmod 644 "$_V"
      sudo cp "$_V" "$CUSTOM_FONTS"
  done < <(sudo find . -name "*$EXT" -type f -print0)
done

pushd "$CUSTOM_FONTS" >/dev/null || exit 1
  sudo mkfontdir
  sudo mkfontscale
  sudo fc-cache
popd >/dev/null || exit 1

使用方法:

  1. 需要给 fonts-install.sh 添加可执行权限:chmod +x fonts-install.sh
  1. 将 fonts-install.sh 添加到 PATH 目录下(比如: /usr/local/bin )
  1. 进入字体目录,执行
sudo fonts-install.sh


注意:
若需安装除 otf, ttf 后缀的字体,需要添加到 for

for EXT in ".otf" ".ttf"; do



设置默认字体

  1. /etc/fonts/fonts.conf 中,添加指定的字体名称(Name),比如思源黑体
<!-- custom 
	自定义 思源黑体:Source Han Sans SC VF
-->
	<match target="pattern">
		<test qual="any" name="family">
			<string>Source Han Sans</string>
		</test>
		<edit name="family" mode="prepend">
			<string>Source Han Sans SC VF</string>
		</edit>
	</match>
  1. 执行 sudo fc-cache -fv 生成字体缓存
  2. 注销当前用户,或者重启系统

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表