【发布时间】:2014-01-15 07:21:41
【问题描述】:
我正在搜索如何将每个文件压缩成一个存档。
例如:fic1.txt fic2.log fic3.srt
我想制作一个存档“fics.tar”,每个文件单独压缩到其中,并重命名文件。
存档应包含:fic1.txt.gz fic2.log.gz fic3.srt.gz
tar/pax/cpio 程序的问题是我们不能直接这样做,我不想压缩硬盘上的文件(或它们的副本),它必须在内存中使用缓冲区完成才能与管道一起使用。
serverX 上的示例:./compress_and_tar fic1.txt fic2.log fic3.srt | ssh server1 "tar -x"
结果:server1 上的 fic1.txt.gz fic2.log.gz fic3.srt.gz,serverX 上只有硬盘读数,零写入。
你有想法吗? 谢谢
【问题讨论】:
-
你为什么要这样做?
-
我需要通过 ssh 将文件从一台服务器传输到另一台服务器,但只有一个流程:只有一个到目标服务器的连接(如果我通过文件打开 1 个 ssh 连接,传输时间会爆炸) .文件必须在目标服务器上进行压缩。这就是为什么我在传输之前 进行压缩:文件更小=> 传输时间减少但是如果我在传输之前压缩整个存档,我必须解压缩存档,然后重新压缩文件。 .. 效率不高。
标签: linux compression archive