Shell脚本不是作为crontab运行,而是手动运行

时间:2020-05-23 22:24:24

标签: java shell cron raspberry-pi minecraft

我有一个脚本可以在Raspberry Pi 4上启动我的Minecraft服务器。由于我的备份实用程序,它必须在GNU屏幕上运行。我已经尝试指定一个路径,它作为进程显示在日志中,但没有运行。

在此方面,我将非常感谢您的帮助,因为我的搜索历史已经很丰富,试图找到问题,但没有任何效果。 Bash脚本如下:

#! /bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
cd /home/pi/Desktop/Servers/PvP
screen -S pvp java -Xmx2560M -Xms2560M -jar server.jar nogui

我的crontab如下。我在此条目下面有一个新行,所以不是这样

00 03 * * * ./start.sh

我尝试指定完整路径,但这也不起作用

编辑: 我还创建了restart.sh,它仅调用stop.sh和调用start.sh stop.sh非常简单

killall screen

然后调用start.sh。整个restart.sh脚本也非常简单

./stop.sh
./start.sh

我将其放在crontab中并开始了一次屏幕会话。低,请注意,在我将作业设置为开始时,屏幕终止。然后,我输入screen -ls,期望看到由start.sh创建的新创建的窗口,但是它没有运行。这超出了我为什么不起作用。如果手动完成,一切都会正常进行,请帮忙! AAAAAAH!

1 个答案:

答案 0 :(得分:0)

指定 actual 完整路径,该路径必须以斜杠开头。例如,feature_matrix["After 2016"] = (feature_matrix.index.year > 2016).astype(int)