2012-06-25 118 views
3

我想更改RSA密钥以打开ssh连接而不出现任何问题。它工作正常,如果我使用this tutorial但我希望它在bash脚本中完成。不幸的是,我被要求输入密码(我不想输入任何内容)。我怎样才能达到自动按输入连续三次,当脚本到达这一点?自动按Enter继续在Bash中

This thread没有帮助,因为我不允许我的工作电脑上安装新程序和echo | command伎俩似乎只为一个工作进入。另外我需要输入“n”和输入,如果程序已经完成,不覆盖任何文件。我如何实现这一目标?

+0

使用'回声-e“\ n”'如果你需要两个新线。 – ceving

回答

2

如果你只想创建一个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 [email protected] 
12

如果你只需要按下输入一堆的时候,这将做到这一点:

yes "" | command

对于任何比你可能想使用expect在其他线程建议比较复杂,您可以在没有root权限的情况下安装到您的homedir中。注:请避免将来重新发布问题。如果您因某种原因不喜欢回答,请对其进行评论。

+0

应该接受更一般的答案。 – liushuaikobe