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 스크립트에도 전체 경로 이름이 있어야 합니다.)

관련 정보