簡體   English   中英

如何檢索使用從 python 腳本調用的 shell 腳本創建的文件名和文件?

[英]How to retrieve a filename and file created using a shell script that was called from a python script?

我有一個調用 shell 腳本的 python 腳本。 shell 腳本捕獲圖像,使用時間戳命名圖像,然后將圖像保存到目錄。 當 shell 腳本完成時,我想從調用 shell 腳本的 python 腳本訪問圖像。

這是我的 shell 腳本capture.sh

DATE=$(date +"%Y-%m-%d_%H%M%S")
fswebcam -r 1280x720 --no-banner /home/pi/app/images/$DATE.jpg
exit 0

這個 shell 腳本是從capture.py調用的:

import os
import subprocess

# call script
subprocess.call(['/home/pi/app/capture.sh'])

#?how to retrieve and process image: /home/pi/app/images/$DATE.jpg

任何的建議都受歡迎! 謝謝!

您可以將 bash 腳本創建的文件的名稱發送到 standardout 並在 python 腳本中捕獲該文件名。 這是一個類似的 SO question,我認為它將引導您朝着正確的方向前進。

正如該問題的最佳答案所指出的那樣,這將取決於您正在使用的 python 版本。看起來您正在使用subprocess.call 就 subprocess 的當前subprocess文檔而言,即舊的 API 調用。 您現在可以在 3.5 及更高版本中使用subprocess.run ,這是調用子進程的推薦方式。

運行 shell 命令並捕獲 output

暫無
暫無

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

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