Предполагая, что вы говорите о системных вызовах Linux или OS X для чтения ввода из TIX Unix, обычным способом является перевод TTY в необработанный режим с помощью ioctl, чтобы вы видели каждый символ как его напечатанный, без редактирования строки.
Но вы также можете установить символ eol
(конец строки) TTY. например из командной строки
stty eol =
Вы можете проверить его с помощью cat
и увидеть, что =
(так же, как и новая строка) отправляют ваш буферизованный текст в ядро, так что cat видит его и печатает его.
Используйте strace
, чтобы увидеть, что системные вызовы stty
используют для этого. Это ioctl(0, TCGETS, { stuf ...}) = 0
(Команды оболочки stty sane
и / или reset
вернут настройки терминала в нормальное состояние после игры с вещами.)