先尽力简单地说明一下几个名词之间的关系。
gsettings提供了对GSetings的命令行操作。
GSetings实际上是一套高级API,用来操作dconf。
dconf存储着GNOME3的配置,是二进制格式。它做为GSettings的后端系统存在,暴露出低级API。在GNOME2时代,类似的角色是gconf,但它是以XML文本形式存储。
更接地气的说法是,dconf是GNOME3的注册表,gsettings是一个查询、读取、设置注册表键值的命令行工具。
列出所有schema
gsettings list-schemas
查找某个schema
gsettings list-schemas | grep "org.gnome.settings-daemon.plugins.keyboard"
org.gnome.settings-daemon.plugins.keyboard
查找某个schema下的所有key
gsettings list-keys "org.gnome.settings-daemon.plugins.keyboard"
active
priority
查看某个schema下某个key的值
gsettings get "org.gnome.settings-daemon.plugins.keyboard" priority
0
查看某个schema下某个key的值类型
这是一个整形
gsettings range "org.gnome.settings-daemon.plugins.keyboard" priority
type i
这是一个boolean类型
gsettings range "org.gnome.settings-daemon.plugins.keyboard" active
type b
设置某个schema下某个key的值
gsettings set "org.gnome.settings-daemon.plugins.keyboard" active false
也可以一步到位,同时搜索schema和keys
gsettings list-recursively | grep "org.gnome.settings-daemon.plugins.keyboard"
org.gnome.settings-daemon.plugins.keyboard active false
org.gnome.settings-daemon.plugins.keyboard priority 0
org.gnome.settings-daemon.plugins.keyboard active false
org.gnome.settings-daemon.plugins.keyboard priority 0
如果你觉得命令行操作还是不太直观,可以使用GUI工具 gconf-editor