gsettings 在 Bash 函数中不起作用

gsettings 在 Bash 函数中不起作用

我对 bash 还很陌生,并且只使用 Ubuntu 6 个月,所以请耐心等待。

我正在创建一个安装后脚本https://github.com/jjdemitriUk/relutionDev用 bash 编写。我之所以将所有内容分成函数,是因为我有多台使用 Ubuntu 的机器,而这个脚本允许我将想要在特定单元上安装的内容模块化,例如我的笔记本电脑获得 dev pack home comp 获得媒体和通用 post install。

我已经进入设置功能并且我知道有两种方法可以更改设置。

  1. 备份原始预安装并复制安装后的内容……目前尚未开始
  2. 从终端运行一个简单的命令,例如gsettings set com.canonical.indicator.session show-real-name-on-panel true

在终端中输入

 gsettings set com.canonical.indicator.session show-real-name-on-panel true

并且真实姓名出现在面板中:)

将其放入函数中

function homeSettings(){
   echo "Changing Settings";
   gsettings set com.canonical.indicator.session show-real-name-on-panel true;
   echo "Setting Changed";
}

并且从终端运行时

./relutionDev homeSettings

我得到了 es 的终端输出echo,所以我知道它被调用了,但没有改变设置。我一直在绞尽脑汁却无济于事。我查看了与我的问题密切相关的其他问题,关于更改壁纸和 cron 作业,但我的问题不是壁纸或 cron 作业。有人能给我指出正确的方向吗?

答案1

您正在运行安装脚本,sudo但是gsettings每个用户配置系统都是不同的。这就是为什么您看不到任何变化。

尝试一下sudo(作为普通用户),它应该可以工作。

相关内容