在登录时执行命令/运行脚本的可靠方法?

在登录时执行命令/运行脚本的可靠方法?

我有两个改变键盘行为的命令:

 xset r rate 120 66
 /usr/bin/setxkbmap -option "ctrl:nocaps"

当我打开终端并执行它们时,它们会更改自动重复设置并重新映射大写锁定以进行控制,不仅在终端窗口中,而且在我的整个桌面环境中。

我希望它们在我登录我的帐户时自动运行(使用 GUI 或通过 ssh/等)。我想以一种稳健的方式做到这一点(即我不想使用特定于发行版的工具)并且我不想使用任何 GUI 工具。

我认为有一些在登录时执行的文件,我应该将这些命令粘贴到那里,但是将它们添加到~/.bash_login没有任何效果,与~/.bash_profile.有了~/.profile,才/usr/bin/setxkbmap -option "ctrl:nocaps"产生效果。

我怎样才能实现这个目标?

答案1

通常,您将想要在用户(您)的上下文中运行的 X 相关项目放入以下两个文件之一:

  • $HOME/.xsession
  • $HOME/.xinitrc

  • 对于 GNOME 桌面,您可以将命令放入 $HOME/.gnomerc

  • 对于 KDE,您将命令放入 $HOME/.kde/Autostart

替代方法

某些命令(例如)xset可能无法在这些文件中运行。如果您仍然想自动化类似的操作,您可以将其添加为“启动应用程序”。

步骤1

创建一个 shell 脚本,xset.bash.

#!/bin/bash
xset r rate 120 66
第2步

添加启动任务来运行shell脚本。

打开应用程序启动应用程序, 在下面系统→偏好设置

                    对话 #1 的 ss

然后单击添加按钮

                                添加对话框的 ss

完成后,确定并关闭对话框并进行测试,注销并重新登录。

参考

相关内容