本篇解决以下两个问题
1.将指定目录下的字体批量导出;
2.将导出字体批量导入另一台电脑。
整个流程是:拷贝 – 压缩 – 传输 – 解压 – 拷贝,主要使用 cp tar scp 等命令完成。
操作步骤
1.在电脑桌面创建一个临时目录存放导出字体。
在电脑桌面打开命令行终端,输入以下命令,在桌面生成一个文件夹tmpFonts,用来存放导出的字体文件。
mkdir tmpFonts
2.复制目标字体到临时目录。
(1)我们在电脑桌面创建一个 shell 脚本 autoX.sh :
vim autoX.sh
(2)使用vim语法,在脚本中写入以下命令:
#!/bin/bash
cp /usr/share/fonts/*_GB2312.ttf /home/ht/桌面/tmpFonts
cp /usr/share/fonts/foxit-ofd/*_GB2312.ttf /home/ht/桌面/tmpFonts
cp /usr/share/fonts/wps-office/*_GB2312.ttf /home/ht/桌面/tmFonts
按i修改内容,ESC键退出编辑模式,按wq保存退出。后续可以直接在记事本里修改、保存。
本文是导出 /fonts、/fonts/foxit-ofd/、/fonts/wps-office/ 文件夹下的国标2312字体。
(3)修改命令内容:
请按照 cp 命令基本格式:
cp [来源路径] [目的地路径]
自行修改和增加命令内容。主要是修改[来源路径],改成自己想要导出字体的路径,可以执行多行 cp 命令,复制多个字体。
(4)执行脚本,导出字体到桌面临时文件夹。
输入以下命令执行脚本,把 /usr/share/fonts/ 目录下的目标字体全部复制到桌面临时目录。
sudo bash autoX.sh
至此,我们查看一下桌面临时目录,想要导出的GB2312字体全部都导出来了。
3.打包字体文件。
使用压缩工具将字体打包成一个压缩文件:
tar -czvf fonts_backup.tar.gz tmpFonts
4.传输字体文件。
使用U盘拷贝、smb或ftp网络共享、SCP等方法将打包好的字体文件传输到另一台电脑的桌面上。这里使用SCP命令传输文件:
scp fonts_backup.tar.gz kylin@192.168.0.118:/home/kylin/桌面/
注意:使用 ssh kylin@192.168.0.118 测试一下远程登录是否正常。我之前写了一篇远程备份文件的文章,把远程密码登录关闭了,所以这里我重新把sshd_config里的PasswordAuthentication设置为yes就可以远程登录了。
5.在目标电脑桌面上解压字体文件。
tar -xzvf fonts_backup.tar.gz -C /home/ht/桌面/ #解压到桌面
tar -xzvf fonts_backup.tar.gz #解压到当前位置
6.导入字体文件。
在目标电脑 /usr/share/fonts/ 目录下创建my_fonts文件夹,将解压后的字体文件复制到 /usr/share/fonts/my_fonts:
find /home/ht/桌面/tmpFonts -name "*.ttf" | xargs -I {} cp {} /usr/share/fonts/my_fonts/
find /home/ht/桌面/tmpFonts -name "*.TTF" | xargs -I {} cp {} /usr/share/fonts/my_fonts/
这里我用了一个复杂的组合命令 find+cp ,目的是能够复制嵌套得比较深的文件夹下的字体文件。
字体文件有多种后缀,比如 .ttf .TTF .ttc 等,使用通配符复制时需要区分开。
7.更新字体缓存,确保新安装的字体生效。
sudo fc-cache -fv
暂无评论内容