在本文中,我们将向您展示如何使用SFTP(安全文件传输协议),也称为SSH文件传输协议,在本地机器和远程机器之间安全地传输文件。命令行提供了其他替代文件传输功能,例如SCP,它在后台也使用SSH(安全外壳)。在示例中,我们将使用托管在本地计算机上的示例文件netflix_titles.csv.zip,我们将使用SFTP安全地传输它。
SSH在两个系统之间创建安全连接。对于此示例,您将需要一个本地和一个远程系统。如果您没有远程系统,请在Windows或Linux上快速配置远程服务器并使用您的root(用户名)和密码登录以进行身份验证:
root@172.105.186.216的密码:
上次登录:FriFeb2614:28:522021from180.150.39.150
[root@sm2134-216~]#
或者,您可以生成用于身份验证的SSH密钥(公钥和私钥对)并使用它登录到远程服务器。要确保远程服务器上不存在任何文件,请检查当前目录并列出该目录的内容:
[root@sm2134-216~]#ls
如果您配置了新服务器,则根目录中将没有文件。退出远程机器并跳回本地机器并列出当前目录中的文件和子目录:
▓~/Projects/ServerMania▓─────────────────▓在12:10花了6m1s≡:39▓
netflix_titles.csv.zip
该目录包含一个文件netflix_titles.csv.zip,我们将使用SFTP命令将其传输到远程计算机。在本例中,我们使用的是root用户,但请确保您的用户对远程服务器具有写权限。
SFTP或安全文件传输协议是对传统FTP(文件传输协议)的升级。SFTP使用SSH(安全外壳)来保护连接。
让我们使用SFTP命令登录到远程机器并启动SFTP会话并运行?或帮助命令:
sftproot@172.105.186.216
root@172.105.186.216的密码:
这将列出所有可能的SFTP命令,但我们只想查看其中的几个。这些命令中的大多数类似于用于导航、文件和目录创建等的基本shell命令。让我们看一些SFTP命令的示例:
在下面的代码片段中,您可以看到上面提到的一些命令的示例在SFTP提示符下运行:
▓~/Projects/ServerMania▓────────────────────────────▓≡20:51:54▓
sftproot@172.105.186.216
root@172.105.186.216的密码:
本地工作目录:/Users/kovid/Projects/ServerMania
远程工作目录:/root/files
既然您知道如何导航本地机器和远程服务器的文件系统,您将学习如何将文件从一个机器传输到另一个机器。
将文件从本地计算机传输到远程服务器

本地工作目录:/Users/kovid
sftp>lcd/Users/kovid/Projects/ServerMania
本地工作目录:/Users/kovid/Projects/ServerMania
llsnetflix_titles.csv.zip
sftp>putnetflix_titles.csv.zip
上传netflix_titles.csv.zip到/root/netflix_titles.csv.zip
netflix_titles.csv.zip100%1207KB1.5MB/s00:00
如您所见,使用put命令,我们已成功将文件netflix_titles.csv.zip从本地机器传输到远程机器。请注意,我们没有提供远程机器上的任何路径,因此文件被复制到远程机器的当前目录中。通过运行ls命令验证文件是否已被复制:
使用bye命令关闭连接(SFTP会话)。
将文件从远程服务器传输到本地计算机
现在,让我们从本地机器中删除本地文件,然后使用get命令从远程服务器获取远程文件将其复制回来:
/Users/kovid/Projects/ServerMania
▓~/Projects/ServerMania▓────────────────────────▓≡21:16:22▓
rmnetflix_titles.csv.zip
▓~/Projects/ServerMania▓─────────────────────────▓≡21:16:32▓
▓~/Projects/ServerMania▓────────────────────────────▓≡21:16:34▓
从本地系统中删除文件后,再次与远程机器建立SFTP连接:
sftproot@172.105.186.216
root@172.105.186.216的密码:
sftp>getnetflix_titles.csv.zip
获取/root/netflix_titles.csv.zip到netflix_titles.csv.zip
/root/netflix_titles.csv.zip100%1207KB4.8MB/s00:00
本地工作目录:/Users/kovid/Projects/ServerMania
llsnetflix_titles.csv.zip
或者,您也可以使用SFTP命令将远程文件复制到本地系统,而无需从本地命令行建立持久连接。这不必使用get命令。看下面的命令:
▓~/Projects/ServerMania▓────────────────────────▓≡21:25:12▓
sftproot@172.105.186.216:netflix_titles.csv.zip。
root@172.105.186.216的密码:
获取/root/netflix_titles.csv.zip到https://www.mfisp.com/netflix_titles.csv.zip
/root/netflix_titles.csv.zip100%1207KB4.8MB/s00:00
▓~/Projects/ServerMania▓──────────────────▓21:25:22花了4s≡▓
SFTP命令是一种在两台服务器之间直接传输文件的简单且安全的方法。现在您拥有轻松使用此命令所需的一切!
还在为让所有这些在ServerMania服务器上运行而寻求帮助吗?联系我们的支持团队,或在下面的评论中分享您的反馈!
本文来源:国外服务器--sftp命令传输文件夹
本文地址:https://www.idcbaba.com/guowai/4946.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 1919100645@qq.com 举报,一经查实,本站将立刻删除。



