Может быть, вы можете запустить программу Java в фоновом режиме, а затем выйти из сценария оболочки? Примерно так:
#!/bin/sh
first_java_program # Synchronous, wait for it
nohup second_java_program & # Run in the background, detach from terminal
exit 0 # Indicate clean exit
Другим вариантом может быть запуск сценария оболочки без Terminal.app, но напрямую с помощью системного вызова уровня 3 (Unix) или чего-то подобного, без взаимодействия с графическим интерфейсом.