Как я могу определить, что команда завершила вывод в tty? - PullRequest
1 голос
/ 06 июля 2011

Я изучаю код мобильного терминала, который является командной строкой для iPhone.Проекты эмулируют терминал VT100.Я могу контролировать все, что проходит через терминал (ascii и управляющие символы), но я не могу понять, как терминал знает, что команда завершила свой вывод.Как терминал узнает, когда снова отобразить подсказку?Существует ли специальный управляющий символ, который каждая команда отправляет при завершении?

1 Ответ

0 голосов
/ 06 июля 2011

Мне кажется, что вы используете shell в терминале, потому что VT100 не показывает приглашение (AFAIK).

Оболочка создает дочерний процесс ивыполняет команду там.Затем оболочка просто ждет, пока этот дочерний процесс завершится, и затем снова печатает его приглашение.

Исключением является случай, когда команда запускается в фоновом режиме (some_command &), оболочка не ждет дочернего элементавыйти и сразу же напечатает подсказку снова.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...