我正在创建一个简单的python脚本,它使用gphoto2从我的USB连接相机拍摄照片,然后显示照片。
当我运行程序时,gphoto2将捕获照片,并且会打开它但我想返回命令行拍摄另一张照片,而无需手动关闭图像窗口。
有没有我可以连续从命令行运行程序而不必关闭图像窗口?
class PhotoBooth(object):
def capture_photo(self):
filename = join(out, '%s.jpg' % str(uuid4()))
subprocess.call('gphoto2 --capture-image-and-download --filename="%s"' % filename, shell=True)
return filename
def print_photo(self, filename):
subprocess.Popen('feh --g 640x480 ' + filename, shell=True)
photobooth = PhotoBooth()
try:
while True:
raw_input("Press enter to capture photo")
filename = photobooth.capture_photo()
photobooth.print_photo(filename)
except KeyboardInterrupt:
print "\nExiting..."
答案 0 :(得分:0)
如果你在后台生成feh进程,你应该能够在一个简单的循环中完成所有这些。请参阅StackOverflow上的这个问题,以获取咒语:
答案 1 :(得分:0)
迈克尔提供的链接为您提供答案。如果该方法不起作用,您可以尝试使用&在feh命令结束时。在Linux和Linux的命令行上在命令结束时将在后台运行命令。