我正在使用 PSCP 将目录从 Linux 计算机复制到 Windows 计算机。这很有效,但我只想复制 Windows 计算机上新的和不存在的目录。
有办法吗?我正在使用 Windows 批处理 (.bat) 文件来调用 pscp.exe,所以也许可以在批处理文件中完成?
谢谢大家的建议!
答案1
在 unix 世界中,包括旨在与 unix 世界交互的基于 windows 的工具,工具通常被设计为只做一件事,并能很好地完成这件事。它们通常被设计为与其他程序交互并结合以完成工作。SSH 是一种连接/加密系统。SCP 是一种通过 SSH 复制文件的方式。基本上,如果你要求它复制某些东西,它就会复制。你需要另一个工具来决定是否应该复制某些东西。
我建议的解决方案是,要么编写自己的小脚本来比较目录树,要么使用已经为此编写的程序。它被称为rsync
并且专门用于比较两个地方的文件和目录集并决定哪些需要复制。它可以使用 scp/ssh 作为传输协议。
有许多 Windows 实现,包括 GUI、独立命令行版本和基于 cygwin 的版本。