【问题标题】:How to create/delete gconf directory with gconftool-2?如何使用 gconftool-2 创建/删除 gconf 目录?
【发布时间】:2011-03-24 15:11:19
【问题描述】:
...呃...主题?
我正在编写一个脚本,该脚本将为我想要连接的各种机器创建 gnome-terminal 配置文件。我需要在每个终端上运行一个自定义命令,而配置文件是该问题的理想解决方案。该脚本应该对 gnome-terminal 配置文件进行各种修改。每个配置文件在 gconf 中都有一个目录。我希望能够从命令行创建和删除这些目录。知道怎么做吗?
【问题讨论】:
标签:
bash
ssh
gnome
gnome-terminal
gconf
【解决方案1】:
你可以使用:
$ gconftool-2 --recursive-unset /apps/gnome-terminal/foo/bar
用于在 gnome-terminal 中取消设置 foo/bar 中的所有内容。
另一种选择是使用带有您想要更改/取消设置的键的 XML 文件,然后使用:
$ gconftool-2 --unload clean-settings.xml
及以后:
$ gconftool-2 --load new-settings.xml
但是,我认为您不需要“删除”或“取消设置”任何内容。我的建议是:
- 根据需要自定义 gnome-terminal。
-
使用以下方式导出设置:
$ gconftool-2 --dump /apps/gnome-terminal > my-gnome-terminal-settings.xml
-
复制文件(或使用任何机制与您的远程机器一起工作)并在您的远程机器上运行:
$ gconftool-2 --load my-gnome-terminal-settings.xml
【解决方案2】:
您可以在“~/.gconf”中创建/删除适当的目录,然后通过执行gconftool-2 --shutdown 和gconftool-2 --spawn 重新启动gconfd。这将刷新 gconf 缓存并立即应用您的设置。
【解决方案3】:
显然你不能直接这样做。相反,删除目录的内容会删除它。问题是,看起来,gconf 和朋友实现了某种设置缓存。因此,您需要一些时间才能看到该目录实际上已经消失。有时它是立即的,但更多时候你必须等待几分钟甚至重新登录。我无法确定 gconf 刷新它的目录结构究竟需要什么。
【解决方案4】:
要使用gconf-editor 创建新目录,请找到所需目录的父目录,然后创建<directory-name>/key 形式的新键。这会为您创建目录。
我假设您可以使用 gconftool-2 进行相同的隐式创建。