Pet*_*mit 3 compression io-redirection
我有一个无法更改的应用程序,它写入一个 250 GB 的大纯文本文件。用 GZ 压缩后只有 30 GB。
这个应用程序没有压缩它的输出的选项,它只能写入文件名(而不是标准输出)。
有没有一种方法可以设置立即压缩输出,而无需先将 250 GB 的文件存储在我的磁盘上?
我还需要另一种方式来欺骗应用程序,以便它读取实际上是压缩的纯文本文件。
您可能会成功使用/dev/stdout作为文件名并将应用程序的输出通过管道传输到gzip.
/dev/stdout是到 的符号链接/proc/self/fd/1。
同样,您可以将其/dev/stdin用作文件名并将 的输出通过管道gzip传输到应用程序。
我说may,因为应用程序可能期望它写入(读取)一个可查找的文件,但/dev/std{in,out}不会是可查找的。如果是这种情况,那么您可能迷路了。您将需要使用可查找文件作为应用程序的目标。
| 归档时间: |
|
| 查看次数: |
433 次 |
| 最近记录: |