如何在macOS为tar添加zstd与lz4压缩算法支持?
在macOS上让tar支持zstd/lz4压缩算法的解决方法
macOS自带的是BSD tar,默认不支持zstd和lz4,而Ubuntu使用的GNU tar天然支持这些算法。你可以通过以下两种方式解决:
1. 安装GNU tar替换系统版本
- 若未安装Homebrew,先执行安装命令:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" - 安装GNU tar:
brew install tar - 配置系统优先使用GNU tar,避免与BSD tar冲突:
编辑你的shell配置文件(如~/.zshrc或~/.bashrc),添加一行:export PATH="/usr/local/opt/tar/libexec/gnubin:$PATH" - 刷新配置使生效:
source ~/.zshrc # 使用bash则替换为source ~/.bashrc - 验证版本与算法支持:
输出会显示GNU tar,且支持zstd、lz4等算法,测试压缩命令:tar --versiontar --zstd -cf archive.tar.zst target_directory/ tar --lz4 -cf archive.tar.lz4 target_directory/
2. 不替换系统tar,单独用压缩命令配合
如果不想替换系统自带tar,可分开执行打包与压缩步骤:
- 先安装zstd和lz4工具:
brew install zstd lz4 - zstd压缩/解压:
# 压缩 tar cf - target_directory/ | zstd -z > archive.tar.zst # 解压 zstd -d < archive.tar.zst | tar xf - - lz4压缩/解压:
# 压缩 tar cf - target_directory/ | lz4 -z > archive.tar.lz4 # 解压 lz4 -d < archive.tar.lz4 | tar xf -
内容的提问来源于stack exchange,提问作者Dr. Light
相关产品推荐
相关产品推荐

