替换字符AppleScript时出错

时间:2019-04-07 22:56:22

标签: macos terminal applescript sh executable-jar

我试图制作一个脚本,以applescript应用程序的形式执行可运行的Jar文件。我对applescript的经验不是很丰富,所以我大多不使用在线摘要。我遇到的第一个问题是该目录会自动格式化为使用“:”而不是斜杠(例如,“ usr:bin”而不是“ usr / bin”),因此我发现了一些应该将:替换为/。但是,这每次都会产生错误。

关于如何解决我的错误,我发现得很少,我发现的东西非常适合这些情况,对我来说没有多大意义。

这是我的代码:

tell application "Finder"
    set current_path to container of (path to me) as alias
end tell

set AppleScript's text item delimiters to ":"
set currPath to text items of current_path
set AppleScript's text item delimiters to "/"
set current_path to currPath as string
set AppleScript's text item delimiters to {""}
currPath

tell application "Terminal"
    activate
    set currentTab to do script ("cd " & current_path)
    set currentTab to do script ("java -jar Inoisulcnoc Pre-Alpha 2")
end tell

我每次遇到的错误都说:

错误“无法获取别名\“ Macintosh HD:Users:knotsnappy:Desktop:Inoisulcnoc Pre-Alpha 2:\”的每个文本项。“ 的每个 文本项中的编号-1728“ Macintosh HD:用户:knotsnappy:桌面:Inoisulcnoc阿尔法前2版:”

我应该如何解决此问题?

1 个答案:

答案 0 :(得分:1)

您需要将标准路径更改为POSIX路径。

tell application "Finder"
    set current_path to (POSIX path of (container of (path to me) as alias))
end tell

tell application "Terminal"
    activate
    set currentTab to do script ("cd " & current_path)
    set currentTab to do script ("java -jar Inoisulcnoc Pre-Alpha 2")
end tell

使用正确的语法后,就不需要分隔符等。