无法让 crontab 运行 shell 脚本

时间:2021-07-19 21:09:44

标签: linux

这似乎是常见问题,我浏览了数十个具有类似问题/问题的提问网站,但没有一个解决方案对我有用。

我使用的是 Raspberry Pi OS(64 位)测试版。

这是我的脚本,它在 crontab 之外使用时可以完美运行,但不能在其中使用:

#!/bin/sh

if ! screen -list | grep -q "minecraft"; then
  cd /home/pi/minecraft
  screen -S minecraft -d -m java -jar -Xms2G -Xmx7G spigot-1.17.jar nogui
fi

我正在使用 sudo crontab -e 但也尝试过 crontab -e:

sudo crontab -e

我计划在启动时使用此脚本以及全天使用相关脚本,但我目前只是将其设置为在未来运行几分钟以进行测试。

05 16 * * * /home/pi/minecraft/scripts/start.sh

屏幕列表中没有任何套接字:

screen -list

我在 syslog 或邮箱中没有收到任何错误,我尝试将 bin/bash、/bin/sh 和 sh 放在路径前面并进行了一些其他调整,但没有任何反应。

1 个答案:

答案 0 :(得分:0)

显然我的 crontab 路径不同,所以我必须在 crontab 中的命令之前添加它:

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games:/usr/lib/jvm/jdk-16.0.1/bin