在机器AI上有文件夹
/home/a/
在计算机BI上有以下文件夹
/home/b/
我希望使用sftp传输/ home / b中/ home / a的所有文件,目录和子目录。在机器AI上尝试了以下命令:
sftp [email protected]
put /home/a/* /home/b/
但是它不起作用,我收到错误消息:“正在跳过非常规文件/ home / a / a1” ... [a1是a的子目录]
如何修改put指令?
谢谢!:)
我使用scp解决了:
scp -r /home/a/ [email protected]:/home/b/
尽管rsync并不严格等同于sftp,但它是scp和sftp的非常强大的替代品,尤其是在将副本从机器A更新到机器B时,因为rsync不会复制尚未更改的文件;它还能够从机器B中删除已经从机器A中删除的文件(当然只有在被告知的情况下)。
在您的情况下,语法将是
rsync -zrp /home/a/ [email protected]:/home/b/
该-r
选项用于递归复制文件,-z
在传输期间启用压缩,并-p
在复制时保留文件许可权(文件创建,编辑等),这是scp不会执行AFAIK的操作。可能还有更多选择。和往常一样,阅读man
页面。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句