我想跑
setxkbmap -option caps:escape
在 Kubuntu 15.04 /etc/init.d/ 下的我的 rc.local 文件中,无论我把它放在哪里,开始或结束,或者在它前面有 exec,它都没有运行。基本上,我希望能够以大写字母作为转义符运行 gvim,我真的不想将它放入 .bashrc 中,因为每次我打开终端时它都会运行(不必要的),而且我希望能够在不先打开 bash 的情况下运行 gvim,并且仍然使用大写字母作为转义符。
此命令在命令行中运行良好。
整个 rc.local 看起来像这样:
#! /bin/sh
### BEGIN INIT INFO
# Provides: rc.local
# Required-Start: $all
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop:
# Short-Description: Run /etc/rc.local if it exist
### END INIT INFO
/usr/bin/setxkbmap -option caps:escape
PATH=/sbin:/usr/sbin:/bin:/usr/bin
. /lib/init/vars.sh
. /lib/lsb/init-functions
do_start() {
if [ -x /etc/rc.local ]; then
[ "$VERBOSE" != no ] && log_begin_msg
"Running local boot scripts (/etc/rc.local)"
/etc/rc.local
ES=$?
[ "$VERBOSE" != no ] && log_end_msg
$ES
return $ES
fi
}
case "$1" in
start)
do_start
;;
restart|reload|force-reload)
echo "Error: argument '$1' not supported" >&2
exit 3
;;
stop)
;;
*)
echo "Usage: $0 start|stop" >&2
exit 3
;;
esac
难道我做错了什么?为了获得相同的结果,还有什么要做的吗?我没有运行 Unity,所以 compizconfig 不会工作。
不要认为在启动实际的 X GUI 会话之前运行任何名称中带有“x”的程序是有用的。
将其放入“启动应用程序”(或 KDE 中的任何名称)。