首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用sftp批处理文件发送密码

如何使用sftp批处理文件发送密码
EN

Stack Overflow用户
提问于 2012-07-31 18:33:58
回答 4查看 125.8K关注 0票数 37

我正在尝试使用批处理脚本从sftp站点下载文件。我得到以下错误:

代码语言:javascript
复制
Permission denied (publickey,password,keyboard-interactive).
Couldn't read packet: Connection reset by peer

运行该命令时:

代码语言:javascript
复制
sftp -b /home/batchfile.sftp <user>@<server ip>:<folder>

batchfile.sftp包括以下数据:

代码语言:javascript
复制
password
lcd [local folder]
cd [sftp server folder]
get *
bye

注意:当在提示符下运行时,它可以正常工作

代码语言:javascript
复制
sftp <user>@<server ip>:<folder>

但我需要能够自动输入密码。

EN

回答 4

Stack Overflow用户

发布于 2014-02-01 12:56:12

您需要安装sshpass程序。然后:

sshpass -p YOUR_PASSWORD sftp -oBatchMode=no -b YOUR_COMMAND_FILE_PATH USER@HOST

显然,最好是设置公钥身份验证。无论出于什么原因,只有在不可能做到的情况下才使用它。

票数 54
EN

Stack Overflow用户

发布于 2014-02-06 08:47:53

如果要生成一堆要运行的命令,然后从终端调用该脚本,则可以尝试执行以下操作。

代码语言:javascript
复制
sftp login@host < /path/to/command/list

然后,您将被要求输入您的密码(按照正常情况),但是脚本中的所有命令都会在这之后运行。

这显然不是一个可以在cron作业中使用的完全自动化的选项,但它可以从终端使用。

票数 22
EN

Stack Overflow用户

发布于 2018-10-25 22:39:36

代码语言:javascript
复制
PSFTP -b path/file_name.sftp user@IP_server -hostkey 1e:52:b1... -pw password

文件内容为:

代码语言:javascript
复制
lcd "path_file for send"

cd path_destination

mput file_name_to_send

quit

要运行主机密钥,请执行以下操作:

代码语言:javascript
复制
psftp  user@IP_SERVER
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11738169

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档