我正在使用的平台是Ubuntu 18.04。我有一个二进制程序(因此无法更改程序)说foo
,它从stdin
逐行读取命令。我在名为“ commands”的文件中存储了命令,并且我想通过将foo
重定向到其commands
来运行stdin
。到目前为止,我知道我可以做到这一点,只需将文件的输出像foo
一样传送到cat commands | foo
即可。
但是我想给命令一个接一个的延迟,例如10秒因此foo
可以等待stdin上的输入,我不在乎。我怎样才能做到这一点?因此,基本上,我想以交互方式提供输入,但实际上不是交互方式,而是自动输入。
答案 0 :(得分:2)
使用bash和循环:
while read -r line; do echo "$line"; sleep 10; done < commands | foo