我想编辑 的一些偏好设置xubuntu-desktop (xfce4)
,但 100% 通过Terminal
。
在ubuntu-desktop (gnome)
我使用中,例如:
# Prevent suspend and lock the sreen
gsettings set org.gnome.desktop.screensaver lock-enabled false
gsettings set org.gnome.desktop.screensaver ubuntu-lock-on-suspend false
# Set performance settings
gsettings set org.gnome.desktop.interface enable-animations false
gsettings set org.gnome.shell.extensions.dash-to-dock animate-show-apps false
# Set personal configs
gnome-extensions enable [email protected]
gnome-extensions enable desktop-icons@csoriano
gnome-extensions enable [email protected]
gnome-extensions enable [email protected]
gsettings set org.gnome.desktop.privacy remember-recent-files false
gsettings set org.gnome.SessionManager logout-prompt false
在 中xubuntu-desktop (xfce4)
,我可以通过 完成所有这些首选项GUI
,但我找不到通过命令行执行相同任务的方法。
只需添加信息以获取更多详细信息:
- 操作系统:乌班图20.04
- 访问类型:
xrdp
通过和进行远程桌面SSH
- 哪些偏好需要改变?
- 防止系统因不活动而暂停
- 禁用屏幕保护程序
- 禁用动画
- 禁用注销确认
- 禁用“
dock
” - 改变
panel
位置 - 参考文献一:类似的命令
gsettings set ...
来gnome-extensions enable ...
执行ubuntu-desktop (gnome)
更改 - 参考文献二:
gsettings list-schemas
与和类似的命令gsettings list-keys ...
- 也来自ubuntu-desktop (gnome)
- 列出可用的首选项设置
答案1
解决方案:
执行更改的命令:xfconf-query
。
列出可用的变革渠道
xfconf-query -l
列出每个通道的属性
xfconf-query -c $PROPERTY -l -v
# For example, the property "xfce4-desktop":
xfconf-query -c xfce4-desktop -l -v
-v
:显示属性的值。- 每个
/
是子属性。
实时监控变化
xfconf-query -c $PROPERTY -m
# For example, the property "xfce4-desktop":
xfconf-query -c xfce4-desktop -m
- 例如,如果
workspace0
壁纸更改,它将显示更新属性的完整路径:/backdrop/screen0/monitorrdp0/workspace0/last-image
。 - 您可以通过 GUI 开始监视和进行更改,其中所有已更改的属性将显示在终端中,供以后通过命令行使用。
创建或更新属性
xfconf-query -c $CHANNEL -np $PROPERTY -t 'bool' -s 'true';
# For example, the channel "xfce4-panel" and the property "/panels/dark-mode":
xfconf-query -c xfce4-panel -np '/panels/dark-mode' -t 'bool' -s 'true';
-n
:确保如果该属性不存在,则会创建它。- 您必须输入属性值的类型:
[ 'string', 'int', 'bool', 'double' ]
-s
:设置属性的值。- 要插入包含多个元素的数组,只需按顺序插入类型和值:
-t int -s 0 -t int -s 1 -t int -s 2 #...
- 强制将单个项目作为数组:
-t int -s 0 -a
删除属性
xfconf-query -c $CHANNEL -p $PROPERTY -r -R;
# For example, removing "Panel 2" completely:
xfconf-query -c xfce4-panel -p '/panels/panel-2' -r -R;
-r
:表示删除。-R
:确保所有子属性与属性一起删除。
Xfce 终端
- 您可以编辑Xfce 终端偏好设置为
~/.config/xfce4/terminal/terminalrc
. - 您可以通过 GUI 进行编辑并复制文件以供以后使用。
- 只需关闭并重新打开终端即可查看更改。
晶须菜单
- 如果您使用晶须菜单,您可以将首选项编辑到
~/.config/xfce4/panel/whiskermenu-**.rc
.- 替换
**
为插件的顺序:whistermenu
在属性中查找插件xfce4-panel/plugins
以查看插件编号。例如,如果惠斯特菜单是
plugin-19
,那么:~/.config/xfce4/panel/whiskermenu-19.rc
。
- 替换
- 您可以通过 GUI 进行编辑并复制文件以供以后使用。
注意事项:
- 大多数影响前端的更改都需要注销并再次登录才能查看更改,尤其是在面板中。
- 该
xfconf-query
命令仅在显示处于活动状态时有效。
下面是包含当前问题的完整解决方案的脚本:
#!/bin/sh
# Check the display's availability
if [ -z $DISPLAY ]; then exit 1; fi;
# Prevent suspend and lock the sreen
xfconf-query -c xfce4-screensaver -np '/lock/enabled' -t 'bool' -s 'false';
xfconf-query -c xfce4-screensaver -np '/lock/saver-activation/enabled' -t 'bool' -s 'false';
xfconf-query -c xfce4-screensaver -np '/saver/enabled' -t 'bool' -s 'false';
xfconf-query -c xfce4-power-manager -np '/xfce4-power-manager/inactivity-on-ac' -t int -s 0;
xfconf-query -c xfce4-power-manager -np '/xfce4-power-manager/blank-on-ac' -t int -s 0;
xfconf-query -c xfce4-power-manager -np '/xfce4-power-manager/dpms-on-ac-sleep' -t int -s 0;
xfconf-query -c xfce4-power-manager -np '/xfce4-power-manager/dpms-on-ac-off' -t int -s 0;
xfconf-query -c xfce4-power-manager -np '/xfce4-power-manager/lock-screen-suspend-hibernate' -t 'bool' -s 'false';
xfconf-query -c xfce4-power-manager -np '/xfce4-power-manager/dpms-enabled' -t 'bool' -s 'false';
# Remove dock
xfconf-query -c xfce4-panel -p '/panels/panel-2' -r -R;
xfconf-query -c xfce4-panel -np '/panels' -t int -s 1 -a;
# Removing wallpaper
xfconf-query -c xfce4-desktop -np '/backdrop/screen0/monitorrdp0/workspace0/color-style' -t int -s 0;
xfconf-query -c xfce4-desktop -np '/backdrop/screen0/monitorrdp0/workspace0/image-style' -t int -s 0;
xfconf-query -c xfce4-desktop -np '/backdrop/screen0/monitorrdp0/workspace0/rgba1' -t double -s 0.184314 -t double -s 0.207843 -t double -s 0.258824 -t double -s 1.000000;
# Personal settings
xfconf-query -c xfce4-desktop -np '/desktop-icons/tooltip-size' -t 'double' -s 48.000000;
xfconf-query -c xfce4-desktop -np '/desktop-icons/gravity' -t int -s 0;
xfconf-query -c xfwm4 -np '/general/workspace_count' -t int -s 1;
# Put menu in bottom
xfconf-query -c xfce4-panel -np '/panels/dark-mode' -t 'bool' -s 'true';
xfconf-query -c xfce4-panel -np '/panels/panel-1/position' -t 'string' -s 'p=10;x=0;y=0';
xfconf-query -c xfce4-panel -np '/plugins/plugin-1/show-tooltips' -t 'bool' -s 'true';
# Grouping tasklist
xfconf-query -c xfce4-panel -np '/plugins/plugin-2/grouping' -t int -s 1;
# Logout settings
xfconf-query -c xfce4-session -np '/shutdown/ShowSuspend' -t 'bool' -s 'false';
xfconf-query -c xfce4-session -np '/shutdown/LockScreen' -t 'bool' -s 'false';
xfconf-query -c xfce4-session -np '/shutdown/ShowHibernate' -t 'bool' -s 'false';
xfconf-query -c xfce4-session -np '/general/PromptOnLogout' -t 'bool' -s 'false';
# Logout to save changes
xfce4-session-logout --logout;