[英]PermissionError: [Errno 1] for os.rename as quick action
這個問題代表解決另一個問題時遇到的最新問題。 讓我先解釋一下當前的問題,把最初的困難留在最后。
os.rename(old_path, new_path)
此Python命令在 Automator 中運行 Python 腳本時有效(使用右上角的運行按鈕)。
/usr/local/bin/python3 "/Users/user/Library/Scripts/move.py"
但是,當作為快速操作運行時,它會引發錯誤
The action “Run Shell Script” encountered an error: “Traceback (most recent call last):
File "/Users/user/Library/Scripts/move.py", line 6, in <module>
os.rename(folder_path, folder_nath)
PermissionError: [Errno 1] Operation not permitted:
所有建議的解決方案都告訴我授予各種程序全盤訪問權限。 但是,在對 Terminal、Finder、Automator 和bash 執行此操作后,我仍然看到錯誤。 我什至在“獲取信息”框中更改了要重命名的文件夾的權限。 沒有任何幫助。
這個問題似乎與我之前遇到的另一個問題是同構的,另一個建議不能作為快速操作:
os.system("""/bin/mv \"""" + old_path + """\" \"""" + new_path + """\"""")
此命令適用於PyCharm ; 當我在 Automator 中運行包含它的python代碼時它可以工作(使用右上角的“運行”按鈕)。
/usr/local/bin/python3 "/Users/user/Library/Scripts/move.py"
但是,當我將此工作流程作為由鍵盤快捷鍵觸發的快速操作運行時,它不起作用:快速操作顯然在小齒輪旋轉時起作用,但文件保持不變。
我已經解決了這個問題。 當涉及到這樣的快速操作時,您需要在使用快速操作時為打開的應用程序授予完整的磁盤訪問權限。
例如,當我在使用 TextEdit 時使用此快速操作時,我需要授予 TextEdit 完整的磁盤訪問權限。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.