У меня проблемы с сценарием оболочки, который использует небольшую часть Applescript. Когда я компилирую его в редакторе Applescript, он работает. Это не так, хотя в сценарии оболочки.
44: 49: синтаксическая ошибка: ожидаемый конец строки, но найдено имя команды. (-2741)
23:28: синтаксическая ошибка: ожидаемый конец строки, но найденный «после». (-2741)
Вот код оболочки:
osascript -e 'tell application "System Events" -e 'activate'
osascript -e 'tell process "Application 10.5" -e 'set frontmost to true' -e 'end tell'
osascript -e 'delay 1' -e 'keystroke return' -e 'delay 1' -e 'keystroke return'
end tell
Applescript (это работает):
tell application "System Events"
activate
tell process "Application 10.5"
set frontmost to true
end tell
delay 1
keystroke return
delay 1
keystroke return
end tell
[обновлено] / [решено]
Это решило любые проблемы, которые у меня возникали при попытке изменить appleScript для работы внутри сценария оболочки:
## shell script code
echo "shell script code"
echo "shell script code"
## applescript code
osascript <<EOF
tell application "Scriptable Text Editor"
make new window
activate
set contents of window 1 to "Hello World!" & return
end tell
EOF
## resume shell script...
Очень здорово, что вы можете поместить чистый яблочный скрипт прямо в скрипт оболочки. ; -)