如何通过命令行使用SFTP上传文件?

24

我知道如何通过sftp获取远程文件。

例如:

sftp root@10.0.0.1:/path/to/file.txt localfile.txt

我该如何将文件上传到远程服务器?

(我需要在我的Bash脚本中使用这个命令。)


SFTP无法上传文件。 - ss-t.c
2
将/local/file.txt复制到root@10.0.0.1:/remote/file.txt - ss-t.c
1
请查看https://dev59.com/W2Qn5IYBdhLWcg3wmH8s#16723151(“2016年2月更新”部分)。 - oliver
2个回答

1

同时考虑使用SSH公钥/私钥,这可以避免您为自动文件交换输入密码。

您可以使用命令“ssh-keygen”生成这些密钥。


1
我已经生成了SSH密钥。谢谢! - ss-t.c

-5
$ scp root@10.0.0.1:/path/to/file.txt localfile.txt

1
我已经尝试了scp命令。它有效。非常感谢! - ss-t.c
23
如果服务仅允许SFTP连接(即禁止通过SSH登录),则这种方法行不通。 - davemyron
16
这不是对问题的回答。SFTP与SCP不同。显然,这5个赞来自于在同一服务器上运行SSH和SFTP服务器的人。 - Kenyakorn Ketsombut
4
这不是一个答案 - 问题是使用 SFTP ... 而不是 SCP。 - Xofo
是的~~这个答案可以在大多数情况下上传文件。因为大多数服务器允许通过ssh登录。如果你想进行真正的sftp上传,请参见@oliver上面的评论。(https://dev59.com/W2Qn5IYBdhLWcg3wmH8s#16723151) - ss-t.c
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接