Launching Terminal (cmd.exe) from Java

Until now SmartGit used following command for its default Open in Terminal external tool:

cmd.exe /k start /d <path>

This did not work for paths like C:\foo, bar+=hello & world though SmartGit had logic to escape the path in this case when launching cmd.exe. Also, the Task Manager showed two running cmd.exe processes, one remaining after the window has been closed. Changing the command to

cmd.exe /c start pushd <path>

resolves both problems and the path-escaping logic also is not necessary anymore.

Author: Thomas Singer

Thomas is one of the two CEOs of syntevo. He is a passionated Java developer and likes to design clean and consistent user interfaces.