applescript'无法将当前应用程序转换为类型字符串'

时间:2013-11-22 10:24:55

标签: shell applescript

我正在创建我的第一个简单的苹果脚本。

基本上要启动一个将开始运行程序的shell脚本。 所以我将shell脚本放入Resources / Scripts中,现在我正在尝试运行这个苹果脚本:

do shell script (path to resource) & "Scripts/startWindows7.sh"

然而,这会导致此错误:

"Can’t make current application into type string." number -1700 from current application to string

我也尝试过运行这个苹果脚本:

do shell script (path to resource "Scripts/startWindows7.sh")

但这会导致另一个错误:

Can’t make alias into type string." number -1700 from alias Contents:Resources:Scripts:startWindows7.sh" to string 

所以必须有更好的方法来做到这一点, 但我无法在Google上找到合适的解决方案,也无法在此找到合适的解决方案。

1 个答案:

答案 0 :(得分:2)

您可以使用POSIX path of (path to me)获取应用程序的路径:

do shell script POSIX path of (path to me) & "Contents/Resources/script.sh"

脚本必须是可执行的并包含一个解释器行:

echo $'#!/bin/bash\nsay a'>Desktop/Untitled.app/Contents/Resources/script.sh
chmod +x Desktop/Untitled.app/Contents/Resources/script.sh