如何在不提供密码的情况下使用scp

我在这里问过一个问题。 我的问题是,我试图通过pipe道给我的密码scp

echo mypassword | scp [email protected]:project/* ~/project/ 

不过,它仍然要求我手动input密码。 我应该如何指定mypassword scp在命令?

我还是不明白其中的一个答复 。 TTY的inputstream是什么? inputstream的常用方法是什么? 如何知道什么types的inputstream标准input命令是? 例如ssh / scp。

基本上,SSH(以及SCP和SFTP等相关工具)会探测input来自哪里,如果不是来自实际用户,则不会通过该方法接受密码,而是要求input密码或者更直接地从用户口令。

出于安全的考虑,如果您希望在命令行上提供您的SSH密码,那么这是不可取的(实际上IIRC也是不可能的)。

如果您需要无密码login,则需要configuration基于密钥的身份validation,谢天谢地这并不难。 有很多很好的教程,快速searchhttp://novosial.org/openssh/publickey-auth/看起来像这个和其他相关的细节,你可能会发现有用的很好的描述。