我有一个复杂的AppleScript,由于某些原因必须作为单行命令执行。我的脚本如下:
tell application "Finder"
tell disk "'myDiskName'"
open
set current view of container window to icon view
set toolbar visible of container window to false
set statusbar visible of container window to false
set the bounds of container window to {400, 100, 968, 421}
close
open
eject
end tell
end tell
我会使用终端来执行脚本,方法如下:
echo '<SCRIPT>' | osascript
这里的 是上面的多行脚本 - 这是完全正常的。现在,更具体地说,我想要使用ant任务来运行此脚本,例如:
<exec executable="echo">
<arg line="'<SCRIPT>' | osascript" />
</exec>
由于 是多行的,它在某种程度上被忽略/未执行,但也不会抛出异常。我看到两个解决方案:一个是单行命令,这是首选;另一个是独立的AppleScript脚本,可以被调用。问题在于:上面的脚本需要一些动态变量,这些变量必须从antscript在运行时生成 - 因此,在飞行中创建脚本可能不是一个选项。