Терминал в Mac OS X - это просто другое приложение. Открытие окна терминала для ввода / вывода текста не является неотъемлемой возможностью каждого приложения, как в Windows.
Кроме того, open /path/to/MyApp.app
не выполняет MyApp.app как подпроцесс вашей оболочки, он отправляет сообщение в инфраструктуру запуска операционной системы с просьбой it выполнить приложение обычным способом, то же как если бы он дважды щелкнул в Finder или щелкнул в Dock. Вот почему вы не можете просто перенаправить вывод, чтобы увидеть, что ваше приложение отправляет на stdout
или stderr
.
Вы можете использовать Console.app для просмотра результатов запуска приложений в обычном режиме, поскольку инфраструктура запуска специально отправляет туда свои stdout
и stderr
. Вы также можете использовать подпрограммы asl
для запроса журнала или выполнить более сложное ведение журнала, если хотите.