![为什么 cron 无法运行我的 sh 脚本?](https://linux22.com/image/844791/%E4%B8%BA%E4%BB%80%E4%B9%88%20cron%20%E6%97%A0%E6%B3%95%E8%BF%90%E8%A1%8C%E6%88%91%E7%9A%84%20sh%20%E8%84%9A%E6%9C%AC%EF%BC%9F.png)
使用 gnome-schedule 创建一个脚本,将我的耳机设置为后备音频设备,因为当耳机断开连接或电脑进入睡眠模式时它会一直取消设置。
无论如何,crontab 是这样的:
SHELL=/bin/sh
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/home/dmitry/bin
* * * * * headsetfix
/home/dmitry/bin/headsetfix 是
#!/bin/sh
pacmd set-default-sink alsa_output.usb-Logitech_Inc_Logitech_USB_Headset_H540_00000000-00-H540.analog-stereo
pacmd set-default-source alsa_input.usb-Logitech_Inc_Logitech_USB_Headset_H540_00000000-00-H540.analog-stereo
它在终端上运行良好。我已确保它已 chmodded 为可执行文件,并且从 cron 运行的“which earphonefix”输出“/home/dmitry/bin/headsetfix”,因此不确定问题是什么。