根据我的项目要求,我需要在 Ubuntu 14.04 机器启动时自动隐藏 Unity 启动器(如果存在)。
如果我运行以下命令:
dconf write /org/compiz/profiles/unity/plugins/unityshell/launcher-hide-mode 1
进入终端后它就可以工作了。
但是正如我已经提到的,我需要在 Ubuntu 14.04 机器启动时自动隐藏 Unity 启动器,因此为此我在“~/.profile”中写入了此命令,但不幸的是该命令在启动时无法按预期工作。
当我将所有其他命令放入“~/.profile”时,它们都会在启动时按预期工作。
将此命令写入“~/.profile”的原因如下所列。
- 仅当我们以登录用户权限运行该命令时,隐藏 Unity 启动器的命令才有效,而当我们以权限运行该命令时,该命令无效
sudo
。
如果我在“/etc/init.d/myscript”、“/etc/rc.local”、“/etc/init/myjob.conf”中写入此命令,那么它会以sudo
权限启动该命令,并且它将不起作用。
- 当我们将命令写入“/etc/init.d/myscript”、“/etc/rc.local”、“etc/init/myjob.conf”时,Ubuntu 14.04 中 GUI 应用程序不会在启动时自动启动,但如果我们将命令写入“~/.profile”,则它会在启动时自动启动 GUI 和非 GUI 应用程序(我自己也测试过)。
下面是一些有用的链接。
用于删除 unity 启动器(如果存在于 Ubuntu 14.04 中)和/或 xfce 面板(在 xubuntu 的情况下)的 Shell 脚本
谁能告诉我如何在 Ubuntu 14.04 机器启动时自动隐藏 Unity 启动器(如果存在),以便当鼠标光标移动到屏幕左边缘时它不会显示或显示(我想将显示灵敏度也设置为低)?
答案1
安装Unity 调整工具定制 Unity Launcher 的行为。
打开终端并执行:
sudo apt-get install unity-tweak-tool
打开该工具,单击“Unity”类别下的“启动器”选项卡并进行调整。
答案2
~/.profile
用于设置用户的环境,并且不是旨在在启动时运行命令/脚本(除非它们用于设置用户环境);您不能指望每个命令/脚本都能工作。
相反,将命令添加到启动应用程序中,是用于在启动时运行脚本,工作原理:
dconf write /org/compiz/profiles/unity/plugins/unityshell/launcher-hide-mode 1
改变边缘响应度的条目是/org/compiz/profiles/unity/plugins/unityshell/edge-responsiveness
(在 Vivid 中范围从0,20000000000000001110
到8,00000000000000000000
),因此要设置两者(无论是否存在小数部分,都必须在整数部分后面放置一个点):
dconf write /org/compiz/profiles/unity/plugins/unityshell/launcher-hide-mode 1; dconf write /org/compiz/profiles/unity/plugins/unityshell/edge-responsiveness 4.
尽管如此,如果您需要在启动时运行整个脚本,您可以将命令放入脚本中并运行该脚本:
bash /path/to/script.sh
#!/bin/bash
# ...
dconf write /org/compiz/profiles/unity/plugins/unityshell/launcher-hide-mode 1
dconf write /org/compiz/profiles/unity/plugins/unityshell/edge-responsiveness 4.
# ...