我试过put -r directory/*,它只上传文件而不上传文件夹。给了我错误,不能Couldn't canonicalise。如有任何帮助,我们将不胜感激。
put -r directory/*
Couldn't canonicalise
ebdffaop1#
答案是:
put -r local/path/to/directoryName
字符串上载的目录必须已存在于服务器上的工作目录中,因此您可能需要先创建它。
mkdir directoryName
型
0aydgbwb2#
Here你可以找到关于如何使用scp复制目录的详细解释。在你的情况下,它会是这样的:
scp
$ scp -r foo [email protected]:/some/remote/directory/bar
字符串这将把目录“foo”从本地主机复制到远程主机的目录“bar”。这里的-r是-递归地复制整个目录。您也可以使用类似语法的rcp。它们之间唯一的区别是scp使用安全shell,rcp使用远程shell。
-r
rcp
顺便说一句当sftp服务器无法访问命令中提到的文件/目录时,会出现您提到的“无法规范化”错误。更新:对于具体想使用put的用户,请参考Ben Thielker的回答。
put
qnyhuwrf3#
sftp> mkdir source sftp> put -r source Uploading source/ to /home/myself/source Entering source/ source/file1 source/file2
字符串
的数据
yyyllmsg4#
如果您在使用sftp时遇到问题,可以使用ncftp For centos
yum install ncftp
字符串递归复制整个目录
ncftpput -R -v -u username -P 21 ftp.server.dev /remote-path/ /localdirectory
oxf4rvwz5#
使用scp代替。它也使用SSH,可以轻松处理递归。
5条答案
按热度按时间ebdffaop1#
答案是:
字符串
上载的目录必须已存在于服务器上的工作目录中,因此您可能需要先创建它。
型
0aydgbwb2#
Here你可以找到关于如何使用
scp
复制目录的详细解释。在你的情况下,它会是这样的:字符串
这将把目录“foo”从本地主机复制到远程主机的目录“bar”。这里的
-r
是-递归地复制整个目录。您也可以使用类似语法的
rcp
。它们之间唯一的区别是scp
使用安全shell,rcp
使用远程shell。顺便说一句当sftp服务器无法访问命令中提到的文件/目录时,会出现您提到的“无法规范化”错误。
更新:对于具体想使用
put
的用户,请参考Ben Thielker的回答。qnyhuwrf3#
字符串
的数据
yyyllmsg4#
如果您在使用sftp时遇到问题,可以使用ncftp For centos
字符串
递归复制整个目录
型
oxf4rvwz5#
使用
scp
代替。它也使用SSH,可以轻松处理递归。