Bash
如何在啟動時以非root使用者身份執行python腳本
我編寫了以下腳本,它應該在啟動時更改目錄,然後以 pi 使用者身份執行腳本(在樹莓派上):
#!/bin/bash echo 'raspberry' | sudo su - pi -c 'cd /home/pi/workspace/counting-objects && python3 script.py
如果我執行腳本,我會收到以下錯誤:
Traceback (most recent call last): File "script.py", line 23, in <module> from custom_module... ImportError: No module named 'custom_module'
如果我在登錄時手動更改文件夾,然後從控制台執行相同的腳本,一切都會按預期工作。
有誰知道如何修復 bash 腳本以便在更改目錄後以 pi 使用者身份正確執行腳本?
謝謝!
sudo
完全避開 shell 腳本,因為不需要它而將其丟棄,並在pi
使用者的 cron 表中添加:@reboot cd /home/pi/workspace/counting-objects && python3 script.py
通過以使用者身份登錄
pi
,並使用crontab -e
.