在linux中解压zip、rar、7z

1. 安装

安装 7zip

Copy
sudo apt install p7zip-full

安装 unrar

Copy
sudo apt install rar unrar

# 如果上面的命令安装失败，可以手动安装
sudo wget https://www.rarlab.com/rar/rarlinux-x64-700b2.tar.gz
sudo tar -zxvf rarlinux-x64-700b2.tar.gz
sudo cp rar/rar rar/unrar /usr/local/bin

2. 使用

解压 7z 文件

Copy
# 解压到当前目录
7z x compressed.7z

# 解压到同名目录
7z x compressed.7z -o*

# 解压到指定目录
7z x compressed.7z -o/path/to/dest

# 解压加密压缩包
7z x compressed.7z -pPASSWORD

解压 zip 文件

7zip 同样可以用于解压 zip 文件，用法同上。

解压 rar 文件

Copy
# 解压到当前目录
unrar x compressed.rar

# 解压到指定目录
unrar x compressed.rar /path/to/dest

# 解压加密压缩包
unrar x compressed.rar -pPASSWORD

3. 批量解压

使用find命令实现批量解压

Copy
find /path/to/folder -name "*.7z" -exec 7z x {} \;
find /path/to/folder -name "*.zip" -exec 7z x {} \;
find /path/to/folder -name "*.rar" -exec unrar x {} \;

# 解压当前目录下所有压缩包到同名文件夹
find -name "*.7z" -exec 7z x {} -o* \;
find -name "*.zip" -exec 7z x {} -o* \;
find -name "*.rar" -exec sh -c 'mkdir -p "$(basename "{}" .rar)" && unrar x "{}" "$(basename "{}" .rar)"' \;