从 C shell(csh)设置 Gnome 扩展

从 C shell(csh)设置 Gnome 扩展

我想设置启用的扩展,但是当我这样做时,它不起作用。echo只是打印到控制台并执行“文件名太长”或显示 gsettings 的用法。

但是如果我复制 echo 的输出并手动将其粘贴到终端中,它就可以起作用。

set setClas = 'gsettings set org.gnome.shell enabled-extensions '
echo $setClas$val
exec $setClas$val

编辑:因此我尝试了@steeldriver 使用别名所建议的方法,但是也不起作用。

仅供参考,变量 val 是一个类似于这样的字符串:“['blah blah', 'another blah blah']”

外部双引号是字符串的一部分。csh 在执行 exec 时会删除外部双引号吗?因为如果没有外部引号,我的命令就无法运行。如果是这样,我该如何强制 csh 包含它们?

答案1

使用eval而不是使用exec解决了我的问题。

相关内容