簡體   English   中英

從 py 腳本在虛擬環境中調用命令

[英]Calling command in virtual environment from py script

我對編碼和軟件很陌生,所以請堅持下去。 我正在嘗試通過 Python 腳本在我的 Raspberry Pi 終端中執行命令。 我希望能夠從桌面運行這個 pi 腳本。 要執行的命令是(rpi-deep-pantilt-env) pi@raspberrypi:~/rpi-deep-pantilt $ rpi-deep-pantilt detect所以如你所見,我需要 cd 進入 rpi-deep-pantilt,然后激活我的虛擬環境,然后通過 py 腳本運行命令。

一個簡單的 shell 腳本來執行您的要求:

#!/bin/sh
cd "$HOME"/rpi-deep-pantilt
. ./rpi-deep-pantilt-env/bin/activate
./rpi-deep-pantilt detect "$@"

大多數或所有這些可能是不必要的。 我猜你可以跑

#!/bin/sh
d="$HOME"/rpi-deep-pantilt
exec "$d"/rpi-deep-pantilt-env/bin/python "$d"/rpi-deep-pantilt detect "$@"

但是,如果您的 Python 腳本具有硬編碼的文件路徑,需要它在特定目錄中運行,那么這是一個會阻止它工作的錯誤。

"$@"表示傳遞任何命令行 arguments,因此如果您將此腳本保存為pant ,運行pant blind mice會將 arguments blind鼠和mice傳遞給您的 ZA7F5F35426B927411FC9231B56382137 腳本。 (當然,如果它在detect之后不接受額外的命令行 arguments ,這並不重要,但我仍然會將它們傳遞給您,這樣您就可以生成錯誤消息,而不是讓它們被忽略,就好像它們不存在一樣.)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM