![动态压缩来自 SCP 的文件](https://linux22.com/image/1314467/%E5%8A%A8%E6%80%81%E5%8E%8B%E7%BC%A9%E6%9D%A5%E8%87%AA%20SCP%20%E7%9A%84%E6%96%87%E4%BB%B6.png)
我正在使用 SCP(从 Linux 系统到 Windows 系统)检索大文件,现在有没有办法动态压缩该目标文件,例如:
pscp -C [email protected]:/backups/backup1.bin Backups\backupdestination.bin
因此“backupdestination.bin”将会在目标驱动器上被动态压缩。
例如 C:\backups\backupdestination.zip 而不是 C:\backups\backupdestination.bin
答案1
我建议rsync
,因为它有一个内置的压缩标志。
从 rsync 手册页 (http://linux.die.net/man/1/rsync):
-z, --compress compress file data during the transfer
--compress-level=NUM explicitly set compression level
答案2
不要使用 scp,使用 ssh :)
然后目标机器就可以“捕获”数据。例如:
ssh [email protected] "cat /backups/backup1.bin"|gzip -9 -|Backups\backupdestination.bin
整个方案适用于任何可以获取连续数据流stdin
并对其进行处理的东西。不过,我暂时还不知道有哪个工具可以以这种方式创建 ZIP 文件。特别是因为 ZIP 文件包含文件名和时间戳等元数据。