Launch Mac App From Terminal

When you run any command in the OS X Terminal, you are running some program that has been coded and compiled to perform a specific function, be it something simple like “ls” to list directory contents, or something more interactive like “top” to display information on running processes. These commands are all programs on your Mac, just like applications such as Pages, Word, TextEdit, and Safari that have graphical interfaces and are the main productivity programs you use when running OS X.

  1. Terminal For Mac

Opening Applications using the Terminal

Make Terminal windows stand out with profiles. When you’re logged in to several servers, unique background colors and window titles specified in profiles help you easily spot the right Terminal window. Use profiles built into Terminal, or create your own custom profiles. How to create profiles for Terminal.

Revolutionary vector and bitmap drawing technology - Brush Engine. Simple animation software free mac pc. Advanced color palettes and painting options.

Open /Applications/Mail.app If you want to use AppleScript (osascript from command line), open app isn't quite equivalent. Instead, you can either use. Osascript -e 'tell application 'Mail' to activate'. Osascript -e 'tell application 'Mail' to launch' You can see this question for the difference between the two. Sep 18, 2014  In addition, such behaviors might interfere with Apple’s Resume service and not save any of your open windows for the next time you re-launch your program. The “open” command. My preferred method of opening an application from the Terminal is to use the “open” command with the the “-a” flag to specify the application by name.

Most applications in OS X are opened by using a graphical approach like mouse click actions or services like Spotlight; however, you can also open applications using the OS X Terminal. This might seem unnecessary, but it can have its uses. For instance, I have a Mac Mini running the third-party media center software “XBMC” on it. This software sometimes crashes and needs to be relaunched, so while I can screen share to it or rummage for my wireless mouse and keyboard to access it, another approach if I am at my laptop is to simply log in with SSH and use one of several command options for opening the program.

1. Direct executable execution

Applications in OS X are packaged as bundles, which are folders including the executable along with any supporting resources (libraries, images, fonts, etc.) that the program needs to run. You can see these by right-clicking any application and choosing the option to “Show Package Contents.” In this bundle structure, the application executable is located in the /Contents/MacOS/ directory, and can be launched directly in the Terminal by specifying the full path to this executable. For example, you can open Safari by running the following command:

While this will open the specified program, this method has some limitations and restrictions that might cause problems. For one, the program will be launched as a child process of the current Terminal window, so if you close the Terminal window you will close the program. In addition, such behaviors might interfere with Apple’s Resume service and not save any of your open windows for the next time you re-launch your program.

2. The “open” command

My preferred method of opening an application from the Terminal is to use the “open” command with the the “-a” flag to specify the application by name. For example, the following command will open Safari:

Sep 17, 2008  A.app is not a file. It's a directory that appears to be a file in the finder. Which is why you can't open it via that method. You don't need to use the open utility: just run the executable within the.app. That will just launch the Simulator, I'm looking for a way to do the same as Cmd+R in the terminal, launching the Simulator AND running the app – Alex Chesters Jul 2 '15 at 8:57 The app must be installed trough Xcode to the simulator.

This approach mimics opening the program using the graphical interface, and can be useful if you are creating scripts where you would like to open a specific application. You can also use many of the “open” command’s options to do things like launch a new instance of a program (though this may conflict with OS X’s Resume service), or open a program in the background. In addition, since the “open” command launches applications indirectly, once run you can simply close the Terminal window and the application will remain open, as opposed to using direct executable execution.

The “open” command is also useful because you can cleanly launch applications for the current user account on a remote system. For instance, in looking at the XBMC setup on my Mac Mini, when XBMC crashes I can use “ssh” to remotely log in as the current username and then simply run “open -a XBMC” to quickly re-launch it.

3. Osascript approaches

The “osascript” command is OS X’s Terminal command for running “open scripting architecture” scripts like AppleScript. Since with AppleScript you can instruct the system to do things like launch applications, with a relatively basic scripting line like ‘open app “APPNAME”‘ coupled with the “osascript” command, you can create a quick one-line command to open any application on the system. For example, the following command will launch Safari similar to the “open” command above:

Keep in mind that as with the “open” command, this will also require you to be logged into the system as the currently active user. Otherwise you will get an error (-10810) at the Terminal and the specified application will not open.

Quitting Applications using the Terminal

While the “open” command is great for launching applications, this approach will only open them and does not provide a way to quit them. Therefore, the AppleScript approach with the “osascript” command may be the easiest way to cleanly quit a running application using the Terminal. For example, given the command above to open Safari, you can use the following one to easily quit it:

Note that while this will attempt to quit programs, if you have unsaved changes in them and a Save dialogue box or other notice pops up that requires user input to proceed, then the program will not quit.

Force-quitting Applications using the Terminal

If you need to force-quit an application using the Terminal, then this can be done in two ways. The first is to simply use the “killall” command, which allows you to specify a program by name and then the system will internally identify it and close it down. The following command is a way to force-quit Safari (since we’ve been using this as an example so far):

In addition to this, for those who like to delve a little deeper into the Terminal, you can first find the process ID (PID) of the running application and then use the standard “kill” command to force-quit it. There are several ways to get the PID of a running application, but an easy one in the Terminal is to use the “pgrep” command and specify the program name. For example, to do so with Safari you would run the following command:

If Safari is running, then this command will output a single number that is the program’s PID. You can then use “kill PID” (replacing PID with the number) to quit Safari. This approach is a two-step process, but you can lump it all into one command by nesting them together using grave accent symbols to encase the “pgrep” command, such as the following:

What these accent symbols do is first execute the “pgrep Safari” command, and then use the result when running the “kill” command. Therefore, this essentially finds the PID for Safari, and then kills the specified PID.

Launch Mac App From Terminal

When you download and run apps on Mac OS from not identified developers it's required to trust them by Gatekeeper. Codesign terminal tool allows you to manually sign any app on your MacBook. Using this technique you can for e.g. sign Adobe Zii app. Apple recently revoked TNT’s certificate.

Open apps from anywhere in Gatekeeper

Usually when you will try to run an app downloaded from a different source then AppStore, the system will disallow you to open the application. The one solution is to enable the ability to open apps from anywhere in Gatekeeper using a terminal command. Launch Terminal and enter the code below.

Click enter and type the administrator password to execute the command. Open the crashed app and if it's not running navigate to System Preferences→ Security & Privacy → Allow apps downloaded from and select Anywhere or allow to open the specific app that will show in the selection menu.

Add an app to quarantine on MacOS Catalina

If it does not work on Catalina and app is flagged as “damaged” even with Gatekeeper disabled (sudo spctl –master-disable) use this command.

Sign .app with Codesign

When you launch an app and it will quit unexpectedly on Mac OS a problem report window will display problem details and system configuration. If you find in the report the message 'Termination Reason: Namespace CODESIGNING, Code 0x1' it means that the app certificate was revoked.

There is a quick solution to sign any .app on macOS installing free codesign tool. Open Terminal App and execute the code to start the download and installation process of Xcode and the command line developer tools from the AppStore. Launch Xcode at least once to agree to the license.

To sign an .app file launch the Terminal and execute codesign with following parameters. You can easily drag and drop the .app from Finder to Terminal allowing you to paste the file located path. After the .app is signed you will have an option to run it as any other regular application.

Terminal For Mac

Codesign available parameters