自动按Enter键继续Bash

时间:2012-06-25 13:08:34

标签: bash input enter

我想更改RSA密钥以打开ssh连接而不会出现任何问题。它工作正常,如果我使用this tutorial但我希望在bash脚本中完成它。不幸的是我被要求输入密码(我想什么都不输入)。当脚本到达此点时,如何连续三次自动按 Enter

This thread没有帮助,因为我不允许在我的工作PC上安装新程序,echo | command技巧似乎只适用于一个 Enter 。此外,我需要输入“n”和 Enter ,如果已经建立了程序,则不要覆盖任何文件。我如何实现这一目标?

2 个答案:

答案 0 :(得分:18)

如果您只需要多次按 Enter ,就可以这样做:

yes "" | command

对于任何比这更复杂的事情你可能想要使用另一个线程中建议的expect,你可以在没有root权限的情况下安装在你的homedir中。

PS:请避免将来重新发布问题。如果您因某些原因不喜欢答案,请对其进行评论。

答案 1 :(得分:3)

如果您只想在bash脚本中创建ssh密钥而无需任何用户输入,则可以指定ssh-keygen的参数:

# rsa type (default), no passphrase, write to file id_rsa and id_rsa.pub
captain:~> ssh-keygen -t rsa -N "" -f id_rsa
Generating public/private rsa key pair.
Your identification has been saved in id_rsa.
Your public key has been saved in id_rsa.pub.
The key fingerprint is:
fe:4a:82:08:0e:ab:b7:02:62:11:4d:3e:79:a4:d3:98 mrb@captain.local