How can I run an application with command line arguments in Mac OS
Starting in OS X 10.6.2, the open command can pass arguments to the application it opens by way of the --args flag. An AppleScript to use it looks like this:
do shell script "open -a /Applications/Firefox.app --args -P default -no-remote"
That should give you all the behavior you want.
Here's my best solution: Create an Applescript with:
do shell script "/Applications/Firefox.app/Contents/MacOS/firefox -P default -no-remote & killall Firefox.app"
And save it as an application.
You can put whatever application with whatever args in the first part. The part after the &
needs to kill whatever you have named your script + .app. You'll see the script app flash up in the dock, but it will then disappear.
Note: The script will not work properly when run from Script Editor, only when run from the script application you have created.
Open Automator and create an Application with a single Run Shell Script action:
/Applications/Firefox.app/Contents/MacOS/firefox-bin -here-some-args &
This application will launch Firefox and quit instantly, leaving only Firefox running.
Alternatively, create an application using AppleScript Editor with the following AppleScript code:
do shell script "open -a '/Users/danielbeck/Applications/Firefox.app' --args -ProfileManager"
Both work fine and don't keep either Terminal or a script application running for more than a second or so. Using Automator, you can even create a Service if you choose so.