I'm running a java application (on Ubuntu) with its own internal CLI but no API or access from outside. One solution I can think of is running this application in its own pseudoterminal and then writing commands to that terminal to submit commands. Is this the best way to do this? If so, is there a conventional way to wrap this sort of thing up? Is there a way that the pseudoterminal can be created, the application be launched within and then commands be sent from other terminals all simply and reliably?