任何人都可以解释使用/ dev / tty
的目的或方法答案 0 :(得分:5)
您可以从POSIX spec开始。从那里,阅读一个过程的“控制终端”。
但仅举例来说...... / dev / tty就像“ssh”这样的命令可以读取你的密码,即使它的标准输入来自其他地方:
tar cf - . | ssh dest 'tar xf -'
如果ssh决定提示你输入密码,它会从/ dev / tty而不是stdin读取它。
从概念上讲,/ dev / tty是“键盘和文本终端”。或多或少。
答案 1 :(得分:1)
它允许程序连接到其“控制终端”,如果有的话,即使stdin,stdout和stderr已被重定向到它。常见的用途是向用户请求密码。
答案 2 :(得分:0)
如果stdin已设置为管道,则可以使用/ dev / tty模拟控制输入终端设备的读取。
例如:
echo ~/.profile ~/.bashrc | xargs sh -c 'vim "$@" </dev/tty' dummy_script_name
# :qa # quit all files