使用nohup时如何发送“enter/any key”信号?

使用nohup时如何发送“enter/any key”信号?

例如,我使用nohup和执行了一个脚本&,将脚本执行放在后台,在某个步骤中,脚本要求我做其他事情以便能够继续当前的执行,并且它还要求确认我是否已经输入 Enter 或其他键即可完成。有什么办法可以做到吗?

答案1

回答你明确的问题

是的,有一种编写控制台交互脚本的方法:Expect。那里有相当多的资源(https://core.tcl-lang.org/expect/index似乎是一个很好的起点);探索期待Libes 所著(ISBN 9781565920903)是一本关于这个主题的好书。

特殊情况:如果有只有一个要从键盘输入的内容(例如“ foo”),您也许可以使用以下技巧之一(并且不必仅针对这一项任务学习 Expect!):



回答(似乎是)你的默示问题

有没有一种方法可以预先提供回复,避免麻烦?或许。您正在处理的工具可能可以选择非交互式执行;请仔细阅读使用说明,以防有这样的选项而您没有注意到。我见过非交互式执行选项称为不同的东西;寻找

  • “无头”
  • “非互动”
  • “响应文件”
  • “沉默的”
  • --assumeyes
  • --preconfig
  • -y

毫无疑问,其他贡献者可以提供更多示例。

相关内容