4

我可以使用 ssh/sftp 登录到我的遥控器(没有 -b 选项)

sftp root@192.168.7.2

但是当我尝试

sftp -b commands.tmp root@192.168.7.2

我明白了

Permission denied (publickey,password).
Couldn't read packet: Connection reset by peer

Commands.tmp 看起来像这样

ls
exit

我在这里想念什么吗?

4

3 回答 3

4

我使用 shhpass 写密码没有交互,我需要添加-oBatchMode=no

sshpass -p PASSWORD sftp -v -oBatchMode=no -b FILE USER@SERVER
于 2020-03-06T09:17:39.867 回答
2

如果您使用密码或加密私钥进行身份验证,则不能使用-bwith plain sftpsftp男人说:

由于它缺乏用户交互,因此应与非交互身份验证结合使用

例如,您可以将无密码的私钥与-b.


如果要使用密码身份验证,则需要使用sshpass. 请参阅:
如何使用 Bash 脚本中的密码运行 sftp 命令?

于 2013-05-21T07:09:03.260 回答
1

这对我有用

sshpass -p 'PASSWORDSTRING' sftp -v -oBatchMode=no -b deploy/production username@ipaddress

生产文件

put -rp /from-directory /to-directory
于 2020-11-20T05:46:22.127 回答