[英]How to use a shell script to start python script on boot up within an Python environment?
如何在 python(3.9) 環境中啟動時(在 Raspberrypi 4B,Raspi_os 64bit 上)運行 python 腳本?
我試圖將source envname/bin/activate
添加到launcher.sh
我的啟動器文件如下所示:
cd /home/pi/thefolder
PYTHONPATH=/home/pi/.local/lib/python3.9/site-package
source envname/bin/activate
pyhton3 /home/pi/thefolder/run.py
顯然 python3 命令沒有在 env 中運行,因為我收到了ModuleNotFoundError
的 ModuleNotFoundError 。 它安裝在環境中。
編輯1:
如果我只創建一個新的 shell 腳本
source envname/bin/activate
echo Hi Stackoverflow
使用 sh test.sh 在 chmod 之后運行,我得到了回報
> test.sh 1: source: not found
> Hi Stackoverflow
雖然我可以在終端中激活環境
編輯2:
顯然 Ubuntu 使用了 bin/dash,而不是 bin/sh。 這是關於它的帖子
現在我必須檢查如何更改它
編輯3:使用:
. envname/bin/activate
echo Hi Stackoverflow
代替
source envname/bin/activate
echo Hi Stackoverflow
似乎工作。 正在進行測試
---最終編輯: ---
是的,它有效。 但重要的是,它顯然必須在第一行,否則file envname cannot be found
使用
. envname/bin/activate
echo Hi Stackoverflow
代替
source envname/bin/activate
echo Hi Stackoverflow
作品。 由於 Ubuntu 使用 /bin/bash 而不是 /bin/sh
顯然. envname/bin/activate
. envname/bin/activate
必須是第一個命令
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.