[英]Running python script in Mac OSX launchd permission issue
我有一個簡單的 python 腳本,它正在從我的下載文件夾中移動文件。 當我通過終端運行該腳本時,它運行良好。 當它通過launchd運行時會發生此問題:
Traceback (most recent call last):
File "/Users/ben/Project/Automation/CleanDownload.py", line 11, in <module>
for f in listdir(downloadFolder):
OSError: [Errno 1] Operation not permitted: '/Users/ben/Downloads/'
任何想法為什么?
這是我用來規避此問題的解決方法。 我試圖運行一個簡單的 shell 腳本,但同樣的解決方法也適用於 Python 腳本。 總結一下,涉及的步驟是:
更多細節:
chmod +x
)並且您擁有正確的#!
腳本頂部的行(例如#!/bin/bash
)。 在此示例中,我將使用~/scripts/organize-screenshots.sh
中的~/scripts/organize-screenshots.sh
將屏幕截圖從我的桌面移動到我的 Google Drive 目錄:#!/bin/bash
user_dir="/Users/soxley"
find "$user_dir"/Desktop -name 'Screen Shot *.png' -exec mv {} "$user_dir"/Google\ Drive/pictures/screenshots/ \;
/bin/bash -c "$1"
作為腳本的主體(見下面的截圖)run-script.app
)open -a run-script.app organize-screenshots.sh
ProgramArguments
更新您的 .plist :<key>ProgramArguments</key>
<array>
<string>open</string>
<string>-a</string>
<string>/Users/soxley/scripts/run-script.app</string>
<string>/Users/soxley/scripts/organize-screenshots.sh</string>
</array>
如果您在 OSX 10.11 (El Capitan)(系統完整性保護)中安裝 Scrapy 時還沒有看到這個,請查看“OSError: [Errno 1] Operation not allowed”
還有這個https://apple.stackexchange.com/questions/339862/ls-operation-not-permitted-mojave-security
根據Roger 的說法,轉到“系統偏好設置” ->“安全與隱私”
並為Terminal
提供 Full Disk Access。
您是否嘗試過授予/sbin/launchd
全盤訪問權限?
很長一段時間以來,我一直在為 Big Sur 打破這個問題。 對我有用的是以下內容:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.