AppleScript Open App
Overview
Use AppleScript (via osascript) to activate or quit a macOS application by its display name.
Quick Start
- •Prefer
scripts/open_app.shfor a reliable one-liner interface. - •Prefer
scripts/quit_app.shfor quitting an app. - •Pass the app name exactly as it appears in Finder (for example, "Xcode", "Safari", "Final Cut Pro").
bash
scripts/open_app.sh "Safari"
bash
scripts/quit_app.sh "Discord"
Tasks
Open an app by name
- •Run
scripts/open_app.sh "<App Name>". - •If the app is not installed, surface the AppleScript error and ask for the correct name.
Open a new instance (only when asked)
- •Use
open -na "<App Name>"only if the user explicitly requests a new instance. - •Otherwise use AppleScript activation.
Quit an app by name
- •Run
scripts/quit_app.sh "<App Name>". - •If the app is not installed or already quit, surface the AppleScript error and ask for the correct name.
Handle ambiguous names
- •If multiple apps share a name, ask for the exact display name or bundle id.
- •If a bundle id is provided, use AppleScript with
application id.
bash
osascript -e 'tell application id "com.apple.Safari" to activate'
AppleScript snippet
bash
osascript -e 'tell application "Safari" to activate'
bash
osascript -e 'tell application "Safari" to quit'
Resources
scripts/
- •
open_app.sh: Shell wrapper that passes the app name to AppleScript viaosascript. - •
quit_app.sh: Shell wrapper that quits the app viaosascript.