从Applescript调用Python脚本

thi*_*ool 5 python macos shell applescript

我的Applescript和Python脚本位于当前工作目录中.现在我需要使用shell命令从applescript中调用名为test.py的Python脚本和admin权限.

Applescript中的这段代码给出了pwd

tell application "Finder" to get folder of (path to me) as Unicode text
set presentDir to POSIX path of result
Run Code Online (Sandbox Code Playgroud)

Applescript中的这段代码手动调用Applescript中的python脚本

do shell script "/Users/mymac/Documents/'Microsoft User Data'/test.py"
Run Code Online (Sandbox Code Playgroud)

如何将presentDir与Admin权限一起添加到此命令?

编辑和更新:

set py to "test.py "
set calldir to workingDir & py
do shell script calldir
Run Code Online (Sandbox Code Playgroud)

它给出了一个错误

error "sh: /Users/mymac/Documents/Microsoft: No such file or directory" number 127
Run Code Online (Sandbox Code Playgroud)

但显示对话框calldir显示

/Users/mymac/Documents/Microsoft User Data/test.py
Run Code Online (Sandbox Code Playgroud)

原因:

由于空间的原因,它在shell脚本命令中的'Microsoft'一词后被打破了.

agf*_*agf 7

如果您知道脚本位于同一目录中,只需使用:

do shell script presentDir & "test.py " user name "me" password "mypassword" with administrator privileges
Run Code Online (Sandbox Code Playgroud)

注意test.py关闭报价之前的空格.您可能需要字符串/test.py,而不是test.py我不确定.

我从http://developer.apple.com/library/mac/#technotes/tn2065/_index.html获得了这些信息.

编辑:试试

set py to "test.py "
set calldir to quoted form of workingDir & py
do shell script calldir
Run Code Online (Sandbox Code Playgroud)