我尝试上传localDir
到远程服务器我遵循本指南SFTP 指南
但是当上传localDir
并进入时我看到空白目录我做了以下事情
sftp> lls
404.html crm nginx-logo.png test.php
sftp> ls
crm
sftp> put -r crm /usr/share/nginx/html
Uploading crm/ to /usr/share/nginx/html/crm
Entering crm/
我crm
根据 SFTP 指南中的以下说明创建了目录
笔记
目前,当前 Ubuntu 版本(至少 14.04 到 15.10)附带的 OpenSSH 版本中存在一个错误,导致上述命令无法正常运行。发出上述命令将内容传输到使用错误版本的 OpenSSH 的服务器时,将出现以下错误:无法规范化:没有这样的文件或目录。
要解决此问题,请先通过键入 mkdir localDirectory 在远程端创建目标目录。之后,上述命令应该可以顺利完成。
但上传文件运行良好。
有什么建议 ?
答案1
你的错误
要根据您的评论解决错误,只需运行mkdir crm
然后运行put -r crm
。
与“get”配合使用的相同标志也适用于“put”。因此,要复制整个本地目录,您可以发出:
put -r localDirectory
笔记
目前,Ubuntu 当前版本(至少 14.04 到 15.10)附带的 OpenSSH 版本中存在一个错误,导致上述命令无法正常运行。发出上述命令将内容传输到使用有缺陷的 OpenSSH 版本的服务器时,将出现以下错误:
Couldn't canonicalise: No such file or directory.
要解决此问题,请先在远程端键入 创建目标目录
mkdir localDirectory
。之后,上述命令应该可以顺利完成。