关于 lz4mt 压缩和 linux 缓冲问题



我正在使用 lz4mt 多线程版本的 lz4,在我的工作流程中,我将数千个大文件(620 MB)从客户端发送到服务器,当文件到达服务器时,我的规则将使用 lz4mt 触发和压缩文件,然后删除未压缩的文件。问题是有时当我删除未压缩的文件时,我无法获得正确大小的压缩文件,因为 lz4mt 在将输出发送到磁盘之前立即返回。那么 lz4mt 有什么方法可以在压缩后删除未压缩的文件本身,就像 bzip2 所做的那样。

Input: bzip2 uncompress_file
Output: Compressed file only

Input: lz4mt uncompress_file
Output: (Uncompressed + Compressed) file

我认为下面的脚本同步命令也无法正常工作。作为我的规则触发执行的脚本是: script.sh

/bin/lz4mt  uncompressed_file output_file
/bin/sync
/bin/rm uncompressed_file

请告诉我如何解决上述问题。多谢

作者在这里。您可以尝试以下方法

  1. 将命令与 &&; 连接起来。
  2. 添加lz4mt命令行选项-q(禁止提示)和-f(强制覆盖)。
  3. 尝试使用原始lz4

最新更新