我正在尝试在 CentOS 中使用 7zip 递归压缩文件夹。命令 7z 不存在,即使我已经安装了 p7zip(yum install p7zip)。可用的命令是 7za,所以我可以手动使用此命令递归压缩文件夹中的所有内容:
7za a -r /backups/content.7zip /path/to/compress
由于要压缩的大小/文件,该命令需要花费大量时间,所以我想用“pv”压缩以查看一些进度条。我试过几种组合都没有成功:
A) pv /path/to/compress | pv -s $(du -sb /path/to/compress | awk '{print $1}') | 7za a -r /backups/content.7zip
B) 7za a -r /backups/content.7zip | pv > /path/to/compress
C) 7za a -r /backups/content.7zip | pv | /path/to/compress
D) /path/to/compress | pv | 7za a -r /backups/content.7zip
错误总是一样的:
bash: /path/to/compress is a folder
0 B 0:00:00 [ 0 B/s] [<=>
PS:我知道有很多替代方法(pxz、plzip、pigz 等)可以递归压缩文件夹,但这让我得到了最终压缩文件的最小尺寸。 我不想要速度,我想要带进度条的最佳压缩大小 即使这需要我几个小时。