在OSX Mojave中,对照相机的访问由弹出对话框和新的“系统偏好设置” >>“安全性和隐私”>“隐私” >>“照相机”面板控制,可以在其中授予(或拒绝)应用程序对照相机的访问权限。
我可以授予“ iterm2”对摄像机的访问权限,这使我可以从命令行运行imagesnap。
我使用Cron作业每60秒捕获一张猫床的照片。由于升级到Mojave,此操作现在失败,因为它没有访问相机的权限。有什么办法可以让我的cron职位访问?我没有针对cron作业的弹出对话框。
答案 0 :(得分:2)
使用Automator应用程序包装器也可以。创建包装器(运行外壳程序脚本),手动运行并授予其权限。然后,cron作业可以调用Automator应用。
答案 1 :(得分:1)
我通过使用一个包装器脚本来解决这个问题,该脚本通过Applescript间接使用iTerm(具有权限并由cron启动包装器)。
#!/bin/bash
osascript << EOF 2>&1 | grep -v "window id"
tell application "iTerm"
create window with default profile command "/path/to/capturescript"
end tell
EOF
答案 2 :(得分:0)
FWIW-Mojave进一步打破了这一点,而Automator应用也打破了。
我花了很多时间摆弄它,然后放弃了。相机设备的安全性似乎再次发生了变化。我的时间很昂贵,而覆盆子的价格却很便宜。我将相机连接到pi,然后使用“ ssh pi fswebcam-> output.jpg”从cron对其进行访问,它可以正常工作。