Unix/Linux:从一台服务器到另一台服务器的sftp文件
时间:2020-01-09 10:43:39 来源:igfitidea点击:
如何使用机密文件传输协议(sftp)在Unix之类的操作系统(如操作系统)下将文件从一台服务器安全复制到另一台服务器?
sftp是类似于ftp的交互式文件传输程序,它通过加密的ssh传输执行所有操作。
将文件从一台服务器复制到另一台服务器的语法如下。
步骤1:启动sftp
启动sftp会话的命令如下:
sftp username@server1
或者
sftp [email protected]
首次连接到服务器时,sftp命令将报告无法建立主机的真实性。
这是正常现象,是正常现象。
这意味着sftp在其已知主机的数据库中没有服务器。
在提示符下回答是,以连接到服务器。
接下来,它将询问您的帐户密码。
输入密码,sftp将登录并显示sftp提示,如下所示:
sftp>
步骤2:sftp命令
sftp命令类似于用于导航文件的Unix/Linux shell命令。
您将使用两台服务器或者计算机。
因此,sftp将为您提供每个命令的本地和远程版本。
通常,所有本地命令都以l作为前缀。
常见的sftp命令
Sftp命令 | 描述 |
---|---|
cd dir | 将ftp服务器上的目录更改为dir。 |
lcd dir | 将计算机上的目录更改为dir。 |
ls | 列出ftp服务器上当前目录中的文件。 |
lls | 列出计算机上当前目录中的文件。 |
pwd | 在ftp服务器上打印当前目录。 |
lpwd | 在计算机上打印当前目录。 |
get file | 将文件从ftp服务器下载到当前目录。 |
put file | 将文件从您的计算机上载到ftp服务器。 |
exit | 从sftp程序中退出。 |
如何获取(下载)文件?
sftp中的get命令允许您从sftp服务器下载文件。
语法为:
get filename
要下载名为data.tar.gz的文件,请执行:
sftp> get data.tar.gz
输出示例:
Fetching /home/Hyman/data.tar.gz to data.tar.gz /home/Hyman/data.tar.gz 100% 1960 1.9KB/s 00:01
如何放置(上传)文件?
将本地文件上传到ftp服务器的语法如下:
put file
在此示例中,上传一个名为Screenshot.png的文件,执行:
sftp> put Screenshot.png
输出示例:
Uploading Screenshot.png to /home/Hyman/Screenshot.png Screenshot.png 100% 12KB 12.2KB/s 00:00
如何从一台服务器A到另一台基于Unix的服务器B sftp?
首先使用ssh命令登录到服务器A:
$ ssh user@serverA
接下来,通过sftp到serverB:
$ sftp user@serverB
最后,将文件上传或者下载到serverB:
sftp> put foo sftp> ls sftp> get bar sftp> lls sftp> exit