open programs with applescript

 ̄綄美尐妖づ 提交于 2019-12-20 10:25:31

问题


2 part question:

I'm simply trying to run programs using applescript from the terminal, so I tried:

$ osascript tell application "iTunes" to activate

and get the error:

osascript: tell: No such file or directory

Giving the full path to the program did not work either. What am I missing? The second part of the question is what I eventually want to use applescript for. I would like to use it to open an application I built using py2app. Can applescript open any mac app or just certain ones that are already compatible.

Thanks


回答1:


Try this. Notice you use "-e" when you are writing the command. Without "-e" you would give a path to an applescript to run. Also notice the string command must be in quotes.

osascript -e "tell application \"iTunes\" to activate"

And if you have a multi-line applescript you use "-e" before each line like this...

osascript -e "tell application \"iTunes\"" -e "activate" -e "end tell"

If you want to open an application just use the unix "open" command...

open "/path/to/application"

If you wanted to open an application using applescript and the "activate" command doesn't work (it should work for almost everything though) then tell the Finder to open it. Remember that applescript uses colon delimited paths...

osascript -e "tell application \"Finder\" to open file \"path:to:application\""



回答2:


In a bash shell (like in Terminal), you can send multiple lines to osascript by using a "here document".

osascript -e "tell application \"iTunes\"" -e "activate" -e "end tell"

becomes

osascript <<EOF
tell application "iTunes"
   activate
end tell
EOF

As an old-skool Unix hacker, I save these little snippets in my $HOME/bin directory and call them from the command line. Still learning the particulars, though.

Alan




回答3:


Try:

do shell script "open /Applications/iTunes.app"



回答4:


you need to put single quotes around the tell:

osascript -e 'tell app "iTunes" to activate'

otherwise you're defining a variable when you run -e




回答5:


an alternative to osascript:

open -a Calendar

close by:

pkill Calendar



回答6:


I'am new to script too.

I am confused to so I scan an essay named AppleScript Language Guide and when I go through script commands items, I learn that if you want to activate an application in mac os with applescript editor you should type beneath code in your editor and then compile and run them! may this answer will help you, here's code:

// applescript editor code    

----------    

activate application "iTunes" line 1    

----------    

tell application "iTunes" to activate line 2


来源:https://stackoverflow.com/questions/10022161/open-programs-with-applescript

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!