需求
- Linux 连续解压 多个文件 unzip 命令 进度条 显示解压进度
pv
- 安装
- sudo apt-get install parallel pv
- 使用
- ls L15-*.zip | parallel -j0 'pv | unzip
- 报错
- UnZip 6.00 of 20 April 2009, by Debian. Original by Info-ZIP.
- Usage: unzip [-Z] [-opts[modifiers]] file[.zip] [list] [-x xlist] [-d exdir]
- ls L13-*.zip | parallel -j1 'echo "正在解压:"; unzip -o ; echo "✓ 完成"'
- 也没有进度条
7zip
- sudo apt install p7zip-full p7zip-rar
- 7z x L15-2.zip
- for arc in M479*; do 7z x "$arc" ; done
alias
_do_up_zip_all() {
setopt local_options nullglob
local files=(*.zip *.rar *.7z)
if [ ${#files[@]} -eq 0 ]; then
echo "未发现压缩文件,跳过。"
return
fi
for arc in "${files[@]}"; do
if [ -f "$arc" ]; then
echo "正在处理:$arc"
if 7z x "$arc" -y; then
echo "解压成功,删除源文件。.."
rm "$arc"
else
echo "警告:$arc 解压失败,保留原文件!"
fi
fi
done
}
alias unzip_all='_do_up_zip_all'