Может кто-нибудь объяснить мне, какова цель / dev / tty - PullRequest
3 голосов
/ 30 мая 2011

Может кто-нибудь объяснить, для чего предназначен или как использовать / dev / tty

Ответы [ 3 ]

5 голосов
/ 30 мая 2011

Вы можете начать с спецификации POSIX .Оттуда прочитайте об «управляющем терминале» процесса.

Но только для примера ... / dev / tty - это то, как команда типа "ssh" может прочитать ваш пароль, даже если ее стандартный ввод поступает изгде-то еще:

tar cf - . | ssh dest 'tar xf -'

Если ssh решит запросить у вас пароль, он будет читать его из / dev / tty вместо stdin.

Концептуально / dev / tty это "клавиатура и текстовый терминал ".Более или менее.

1 голос
/ 30 мая 2011

Позволяет программе подключаться к своему «управляющему терминалу», если таковые имеются, даже если stdin, stdout и stderr были перенаправлены от него.Обычно используется запрос пароля от пользователя.

0 голосов
/ 30 мая 2011

Если stdin уже настроен как канал, вы можете использовать / dev / tty для эмуляции чтения с управляющего оконечного устройства ввода.

Например:

echo ~/.profile ~/.bashrc | xargs sh -c 'vim "$@" </dev/tty' dummy_script_name
# :qa  # quit all files

См .: После выполнения grep и передачи его в vim, а затем выхода, почему я испытываю эту странную неисправность консоли?

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