Command Line/Terminal Launch Project Client from MacOS terminal

In there’s a command line section where it describes the commands for Windows and Linux to launch projects from cmd/terminal. It’s pretty obvious that Linux command should work for MacOs terminal. However, it seems not to work because I can’t find the anywhere on Mac. Please some help!

Mine was installed in the Applications folder and is called “Client”

1 Like

MacOS can perform this using the open command as well: open -a /Users/tester/Desktop/Vision\ Client\ --args -Dapplication=MY_APPLICATION


Great @jcoffman thanks, was this part of

that I didn’t realized how to use. In addition, I want to add some knowledge. If a project has a empty space between it’s better to use \ and not %20 as suggests in docs.

The launcher application should use %20 - the \ in JJ’s example is escaping the space in the filename (common to POSIX shells); %20 is HTML-escaping the space for the parsing logic specific to Ignition.

1 Like

running for MacOS terminal the %20 didn’t work for me, instead \ did work

@PGriffith or @jcoffman I need an advice, now I’m trying to run this command from system.util.execute in a button in a MacOS Client but I can’t make it work. For example, for Windows I need to call “cmd.exe” in Ubuntu there’s not need o call the terminal. How about MacOS?

Well, you can do two things:

  1. use the open command, though you will likely need to do some fancy calling from a bash script or something
  2. call the bundled executable within the .app directly. like\ Client\ Launcher -Dapplication=MY_APPLICATION

I understand your point sir, you’re right the %20 would be valid inside a Ignition function.
The \ is valid within MacOS terminal.
Is good to make that clarification

For testing I will just try to launch Vision Client Launcher app first with no project specified
I still don’t make it work. In a button script:

system.util.execute(['open -a /Applications/Vision\ Client\'])

But in MacOS terminal
And it opens the app!!

For bundle execution:

system.util.execute(['/Applications/Vision\ Client\\ Client\ Launcher'])


system.util.execute(['/Applications/'+"Vision\\ Client\\"+'/Contents/MacOS/'+"Vision\\ Client\\ Launcher"])

Even giving the full path:


For all of those I have the


try this?
system.util.execute(["/Applications/Vision Client Client Launcher", "-Dapplication=MY_APPLICATION"])

1 Like

Awesome, it worked…the problem was those \ , I should have tried that…
Thanks @jcoffman