无法从 bash 脚本运行 bash 脚本

无法从 bash 脚本运行 bash 脚本

我创建了一个必须在启动时执行的脚本,并且必须在执行其他命令之前运行另一个脚本(它设置一些变量)。

编写脚本后,我已经在控制台中成功执行了它,但是如果将脚本添加到 crontab 中,则该脚本中的其他脚本不会被执行。

已添加到 crontab 的脚本(main-script.sh)如下:

#!/bin/bash
source /home/pi/test-script.sh
python mycustompythonscript.py

test-script.sh 如下(我用这个脚本替换了实际脚本进行测试):

#!/bin/bash
echo "greetings from test script" > test.txt

因此,当我从控制台运行 main-script.sh 时,将执行 test-script.sh (创建文件)并执行 python 脚本。然而,重新启动 RPi 后,会执行 python 脚本,但不会执行 test-script.sh(不会创建 test.txt 文件)。

有谁知道如果 cron 执行 main-script.sh 则不执行 test-script.sh 的可能原因是什么?

答案1

您需要指定 的绝对路径test.txt。它不会把它放在你期望的地方。

找到sudo find / -iname "test.txt"它。

(Python 脚本还应该有完整路径名。)

相关内容