我已经看到,对于某些程序,将文本传递给提示的唯一方法是使用expect
命令。
从文件重定向输入或使用" here here"不起作用。 期望会正确传递文字吗?
答案 0 :(得分:3)
例如,出于安全原因,当ssh
需要读取用户的密码时,它不会从stdin
读取,这可能是 tty ,< em> file , pipe 或 fifo 。相反,ssh
直接打开/dev/tty
并从中读取密码,如果存在,则保证为 tty (否则ssh
如果{{1}将失败不可用)。
请参阅以下示例(在Linux上):
/dev/tty
Expect做的是创建一个pty并在该pty上运行命令。