Bash

無法從 bash 腳本執行 bash 腳本

  • February 23, 2019

我創建了一個必須在啟動時執行的腳本,並且必須在執行其他命令之前執行另一個腳本(設置一些變數)。

寫好腳本後,我已經在控制台成功執行了,但是如果把腳本加到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 文件)。

有誰知道如果 main-script.sh 由 cron 執行,test-script.sh 不執行的可能原因是什麼?

您需要為test.txt. 它不會把它放在你期望的地方。

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

(python 腳本也應該有一個完整的路徑名。)

引用自:https://unix.stackexchange.com/questions/502481