linux脚本使用scp自动传输,使用Shell脚本自动传输SCP文件

我的unix系统上的目录中有n个文件。 有没有一种方法可以编写Shellscript,该脚本将通过scp将所有这些文件传输到指定的远程系统。 我将在脚本中指定密码,这样就不必为每个文件输入密码。

您能告诉我在rsync中在shell脚本中使用密码是否有效,或者您是否尝试过密码? 谢谢。

与其在shell脚本中对密码进行硬编码,不如使用SSH密钥,它更容易且安全。

$ scp -i ~/.ssh/id_rsa [email protected]:/path/to/bin/*.derp .

假设您的私钥位于~/.ssh/id_rsa

生成公钥/私钥对:

$ ssh-keygen -t rsa

上面将生成2个文件,~/.ssh/id_rsa(私钥)和~/.ssh/id_rsa.pub(公钥)

设置SSH密钥以使用(一次任务):

复制~/.ssh/id_rsa.pub的内容并粘贴到myserver.org服务器中的新行~devops/.ssh/authorized_keys中。如果~devops/.ssh/authorized_keys不存在,请随时创建它。

此处提供了清晰的操作指南。

即使按照这些说明进行操作,仍然会提示我输入密码...我是否还缺少其他标准?

@ScottScooterWeidenkopf可能有些错误,例如.ssh目录或authenticated_keys文件可能没有正确的权限(700)。

@PradeepPati我想出了我的问题。没错,问题出在权限。在您提供的链接中,作者提到了一些权限更改。我做了这些更改,现在一切正常。

#!/usr/bin/expect -f

# con

你可能感兴趣的:(linux脚本使用scp自动传输,使用Shell脚本自动传输SCP文件)