在本文中,我们将向你展示如何使用 sftp 上传/下载整个目录(包括其子目录和子文件)。
<a target="_blank"></a>
要连接到远程 sftp 服务器,如下建立一个安全 ssh 连接并创建 sftp 会话:
<code>$ sftp [email protected]</code>
登录到远程主机后,你可以如下运行交互式的 sftp 命令:
<code>sftp> ls #list directory</code>
<code>sftp> pwd #print working directory on remote host</code>
<code>sftp> lpwd #print working directory on local host</code>
<code>sftp> mkdir uploads #create a new directory</code>
run sftp commands on remote linux
linux 主机上运行 sftp 命令*
要将整个目录上传到远程 linux 主机中,请使用 <code>put</code> 命令。但是,如果目录名称不存在于远程主机上的工作目录中,你将收到错误,如下面的屏幕截图所示。
因此,首先在远程主机上创建一个具有相同名称的目录,然后从本地主机上传它,<code>-r</code> 参数允许拷贝子目录和子文件:
<code>sftp> put -r tecmint.com-articles</code>
<code>sftp> mkdir tecmint.com-articles</code>
<code>sftp> put -r tecmint.com-articles</code>
使用 sftp 上传文件夹
要保留修改时间、访问时间以及被传输的文件的模式,请使用 <code>-p</code> 标志。
<code>sftp> put -pr tecmint.com-articles</code>
要从远程 linux 主机下载整个 fstools-0.0 文件夹到本机中,如下所示使用 get 命令带上 <code>-r</code> 标志:
<code>sftp> get -r fstools-0.0</code>
使用 sftp 下载目录
如果文件夹已经下载完成了,接着查看本机的工作目录。
要退出 sftp shell,输入:
<code>sftp> bye</code>
<code>或者</code>
<code>sftp> exit</code>
原文发布时间为:2017-03-01
本文来自云栖社区合作伙伴“linux中国”