这是代码:
#!/usr/bin/bash
echo hello world!
sxhkd -c $HOME/.config/sxhkd/sxhkdrc
echo done sxhkd
setxkbmap -option caps:swapescape
echo done setxkbmap
xset r rate 250 60
echo done xset
我希望它在启动时运行,所以我把它放在 crontab 中 @reboot /home/name/startup.sh,它不起作用,所以我尝试自己运行脚本,它回显 hello world!,然后什么也没有发生,那里没有新的提示,但是当我按 ctrl+c 停止程序时,其余部分运行正常。我该如何解决?我戴的是软呢帽。
答案1
在 sxhkd 行末尾添加一个“&”以在后台运行它,否则它将卡在该行直到您退出 sxhkd,而您可能不想这样做。
sxhkd -c $HOME/.config/sxhkd/sxhkdrc &
但我不太确定你想从 cronjob 运行它。您不想以您的用户身份运行它吗?也许从您的.xinitrc
或您的窗口管理器或桌面环境使用的其他启动脚本启动它?