通过命令行编辑 Xubuntu 首选项

通过命令行编辑 Xubuntu 首选项

我想编辑 的一些偏好设置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;


资料来源:

相关内容