Run AppleScript from the Command Line in Mac OS X with osascript
Mac users can run AppleScript from the command line if desired, either by running a script file directly or by giving the osascript command direct plain text script statements. This can be useful for many purposes, but should be particularly nice for users who spend a lot of time in the command line or who perform remote administration tasks with ssh.
Running AppleScript Script Files from the Command Line
To run an AppleScript script file from the Terminal in Mac OS, simply point the osascript to the .scpt command file path like so:
For example, if you saved this script to automatically connect to a VPN as a script file rather than an application, you could point the osascript command directly at the file to execute it. Any .scpt file can be launched simply by pointing the osascript command at the proper path, whether it was created in Script Editor of AppleScript or from a plain text file does not matter as long as the syntax is correct.
Running AppleScript Script Statements Directly from the Terminal
To run a specific AppleScript script or statement without having it saved as a .scpt file, you can simply use the -e flag and then the necessary single and double quotes to properly quote and escape the script.
For a few examples:
osascript -e 'display dialog "Hello from osxdaily.com" with title "Hello"'
Will display a dialog box saying “Hello”
osascript -e 'tell app "Finder" to make new Finder window'
Will open a new Finder window
osascript -e "set volume 0"
Will mute the system volume.
We have covered numerous short AppleScripts using the osascript command before, including gracefully quitting applications in Mac OS from the command line, setting Mac wallpaper from the command line, ejecting all mounted volumes, muting or changing system volume, and more. Anyone interested in learning more about AppleScript can find a significant amount of information, syntax, commands, and helpful guides in the ‘Script Editor’ application bundled with MacOS and Mac OS X.
Know of any particularly interesting tricks for using AppleScript from the command line? Let us know in the comments below.