发布于2026-07-09 阅读(0)
扫一扫,手机访问
说到Ubuntu终端配色的备份,很多用户会想当然地以为,把 ~/.bashrc 里的 PS1 配置一存就万事大吉。但真正的“终端配色主题”,远不止提示符那几个颜色那么简单。整个窗口的文本色、背景色、选中色、光标色,以及16色调色板——这些才是构成你视觉体验的核心资产,它们可全归GNOME Terminal自己管着。要备份这些,就得走正经路子了。
用gsettings备份GNOME终端配色主题需执行:gsettings list-recursively org.gnome.Terminal.Legacy.Profile:/org/gnome/terminal/legacy/profiles:/:$(gsettings get org.gnome.Terminal.ProfilesList default | tr -d ")/ > terminal-profile-backup.txt,该命令动态获取默认profile ID并导出全部颜色参数(如foreground-color、background-color、palette等)为纯文本。

gsettings 备份当前终端配色主题Ubuntu 的 GNOME 终端(gnome-terminal)并没有提供“导出主题”这种图形按钮,但你完全不用慌——它的所有配色配置实际上都存放在 dconf 数据库里,而 gsettings 就是访问这个库的安全封装。只要把这条关键路径备份下来,后续恢复基本就是分分钟的事。
gsettings list-recursively org.gnome.Terminal.Legacy.Profile:/org/gnome/terminal/legacy/profiles:/:$(gsettings get org.gnome.Terminal.ProfilesList default | tr -d ")/ > terminal-profile-backup.txtb1dcc9dd-5262-4d8d-a863-c897e0d049d6),所以绝对不能硬编码,必须用 gsettings get ... default 实时抓取。然后它会导出该 profile 下所有的颜色参数,像 foreground-color、background-color、palette 等等,全部以纯文本形式写入备份文件,十六进制值和布尔开关一个不落。cat terminal-profile-backup.txt 就能看到完整的配置清单。后面配合 gsettings import 或 dconf load 就能恢复(具体步骤见下一节)。~/.bashrc 就算备份了终端配色这是一个非常经典的误区。 ~/.bashrc 里的 PS1 颜色控制的是 shell 提示符——用户名、路径、$ 符号这些——它只是终端窗口里极小的一块内容。而真正的“终端配色主题”涵盖的是整个窗口的视觉风格:文本色、背景色、选中色、光标色,还有那16色调色板(palette),ls、vim 这些命令的色彩表现,全都依赖它。这些跟 shell 压根儿没关系。
PS1 只影响提示符文字颜色,对 ls 输出的绿色/蓝色/红色文件名完全不起作用。PS1 也不影响 vim 中语法高亮的颜色映射——vim 读取的是终端上报的 palette,不是你写的 PS1 字符串。~/.bashrc,换到新机器上恢复之后,打开终端一看,ls 出来的文件依然是黒底白字,因为 palette 完全没有被还原。说白了,只靠 ~/.bashrc 备份配色,等于只存了门牌号却没存房子本身。
dconf 导入备份时容易漏掉的关键点很多人拿到备份文件之后,直接拿 gsettings import 去还原——结果发现不生效,因为 GNOME Terminal 的 profile 在 dconf 数据库里是以路径形式组织的,而且每创建一个新 profile,系统都会生成一个新的 UUID。正确的做法是用 dconf 工具直接写入目标路径。
gsettings get org.gnome.Terminal.ProfilesList list,如果结果为空,需要先在 GUI 里新建一个 profile(手动新建一次就行了)。dconf reset -f "/org/gnome/terminal/legacy/profiles:/:$(gsettings get org.gnome.Terminal.ProfilesList default | tr -d ")/"dconf load "/org/gnome/terminal/legacy/profiles:/:$(gsettings get org.gnome.Terminal.ProfilesList default | tr -d ")/" killall gnome-terminal-server 强制重载配置,新主题才会生效。这几个步骤缺一不可。尤其那个 dconf reset -f,很多人忘了清空就直接 load,导致新旧配置冲突,最终效果乱七八糟。
要,而且必须一起打包。字体(font-name)、行距(use-system-font)、透明度(background-transparency-percent)都属于同一 profile 的配置项。如果你只备份了颜色,那么恢复出来的主题看着可能还行,但字体渲染效果和透明感全丢了,典型的“形似神不似”。
palette 值是一串用逗号分隔的16个十六进制颜色值(比如 '#000000,#cc0000,#4e9a06,...'),顺序是固定的。一旦错一位,整个 ls 的颜色就全乱了——目录变成蓝色还是紫色,全看 palette 的顺序对不对。list-recursively 默认就把所有字段都导出了,没有显式排除任何东西,所以你不必额外操心——字体、透明度、光标样式等等,全在里面。真正起效的终端配色备份,不是记几个颜色代码那么简单,而是要把 profile 在 dconf 路径下的完整状态固化下来——UUID、palette、字体、透明度、光标样式,缺一不可。否则恢复之后,看着像,用起来却处处不对劲,那才是真正的头疼。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
4
5
6
7
8
9