0

我正在研究一个shell脚本,它压缩一个文件,然后将它上传到我拥有的服务器。

到目前为止,我拥有它,因此它会询问服务器密码,然后保留该变量。在它完成之后,脚本会压缩一个包含一堆文件的文件夹。然后它执行“scp”命令将其发送到我的服务器。

现在,这就是我需要帮助的地方......我希望它填写脚本之前在请求服务器密码时提供的密码。我确定您会问“为什么在“scp”命令要求时不输入密码。原因是我拥有的文件会很大,我不想坐在那里看它拉上拉链。这就是为什么我早早提供密码的原因。

以下是步骤:

1)用户提供服务器密码,该密码保存为变量“密码”

2)脚本压缩文件

3)脚本将文件发送到服务器(当我在脚本中运行这部分时,它会要求输入密码。我必须在此处输入密码变量。)

关于如何做到这一点的任何想法?非常感谢,会,

4

1 回答 1

0

步骤 1 存在缺陷,原因有几个,包括安全相关和技术原因。

您应该做的是在后台创建一个“空”SSH 会话以生成主连接(请参阅手册页中的ControlPathControlMaster选项ssh_config(5))。为后续的 SCP 操作使用相同的控制设置将使用此连接,而无需询问密码。脚本完成后不要忘记终止空会话。

于 2012-08-31T18:13:14.187 回答