
小小白,在弄一 AppleScript 使用 root 身份行一 shell script 遇到了以下
文件如下:
/Users/apple/myscript/
myApplescript.app
bash.sh
Config.plist
其中 Config.plist 要到 /private/var/db/dslocal/nodes/Default/computergroups
我想把 bash.sh Config.plist 文件放到 myApplescript.app/Contents/Resources/Scripts 面(即是把 Applescript 保存 app 格式后再把另外 2 文件放到 app 面行用)
而 myApplescript.app 的路不定,可能被放在不同文件,怎取 App 其前路?
do shell script “ sh 怎自得到 App 前路?/Contents/Resources/Scripts/bash.sh ” user name "root" password "rootpassword" with administrator privileges
set TargetPath to “ /private/var/db/dslocal/nodes/Default/computergroups ”
do shell script “ cp r 怎自得到 App 前路?/Contents/Resources/Scripts/Config.plist ” & TargetPath user name "root" password "rootpassword" with administrator privileges
AppleScript 怎改?大神忙看看,
1 wolf1981 OP anyone can help? |
2 johnnyb 2015-09-25 14:46:49 +08:00 通过 ```applescript set scptPath to POSIX path of ((path to me) as Unicode text) ``` 可获得当前 .applescript 的路径。如果你把 .applescript 编译成 .app 放在 `/path/to/YourBundle.app` 那么前面语句得到的是 `/path/to/YourBundle.app/Contents/Resources/Scripts/main.scpt` |
3 wolf1981 OP |
4 johnnyb 2015-09-25 18:09:54 +08:00 set dirPath to do shell script "echo $(dirname " & quoted form of POSIX path of scptPath & ")" |