在 Linux 服务器上无需 sudo 权限解压/打包 .7z 的方法(实用命令)

  • 7z的压缩比很高,可以把100G的文件压到3-5G,在大文件传输上很有优势
  • 但是一般服务器上是只有tar解压,用户没法(没有权限)直接安装7z工具来解压
  • 因此使用conda安装p7zip库可以很好地解决这个问题~

关于7z的相关背景知识,可参考:一些关于上传数据-p7zip-full-压缩包的经验------深度学习·科研实践·从0到1-CSDN博客

Linux安装7zip

由于我们没有管理员权限,可通过conda解决

先conda activate 进到咱的环境里,执行:

bash 复制代码
conda install -c conda-forge p7zip

看看效果:

bash 复制代码
(base) schen744@mgmt-4:~/code/sparseocc/data/nuScenes-Occupancy$ conda activate sparseocc
(sparseocc) schen744@mgmt-4:~/code/sparseocc/data/nuScenes-Occupancy$ conda install -c conda-forge p7zip
Retrieving notices: ...working... done
Channels:
 - conda-forge
 - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch
 - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
 - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
 - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
 - defaults
Platform: linux-64
Collecting package metadata (repodata.json): done
Solving environment: done

## Package Plan ##

  environment location: /hpc2hdd/home/schen744/.conda/envs/sparseocc

  added / updated specs:
    - p7zip


The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    p7zip-16.02                |    h9c3ff4c_1001         2.2 MB  conda-forge
    ------------------------------------------------------------
                                           Total:         2.2 MB

The following NEW packages will be INSTALLED:

  p7zip              conda-forge/linux-64::p7zip-16.02-h9c3ff4c_1001 


Proceed ([y]/n)? y


Downloading and Extracting Packages:
                                                                                                                         
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
(sparseocc) schen744@mgmt-4:~/code/sparseocc/data/nuScenes-Occupancy$ 

成功安装!

实用7zip解压命令

bash 复制代码
7z x nuScenes-Occupancy-v0.1.7z  # 解压到当前目录

或指定输出目录:

bash 复制代码
7z x nuScenes-Occupancy-v0.1.7z -o./extracted_data  # 解压到 ./extracted_data

其它解压命令:

bash 复制代码
# 解压标准包
7z x archive.7z

# 解压加密包
7z x secret.7z -p'MySecurePassword'

# 合并分卷解压
7z x split_archive.7z.001

压缩(打包)相关的命令:

bash 复制代码
7z a [压缩文件名] [要打包的目录路径]
  • a:表示"添加"文件到压缩包 (archive)

示例:

bash 复制代码
7z a archive.7z /path/to/directory

实用压缩命令

  1. 标准压缩(推荐):

    bash 复制代码
    7z a -t7z -mx=9 -m0=lzma2 archive.7z /path/to/directory
    复制代码
  2. 加密压缩(密码保护):

    bash 复制代码
    7z a -p'MySecurePassword' -mhe=on secret.7z /path/to/sensitive-data
    复制代码
  3. 分卷压缩(适合大文件传输):

    bash 复制代码
    7z a -v500m split_archive.7z /path/to/large_directory
    复制代码

    将生成:split_archive.7z.001, split_archive.7z.002

相关推荐
C_心欲无痕2 小时前
ts - tsconfig.json配置讲解
linux·前端·ubuntu·typescript·json
冰西瓜6002 小时前
国科大2025操作系统高级教程期末回忆版
linux
HIT_Weston3 小时前
93、【Ubuntu】【Hugo】搭建私人博客:面包屑(一)
linux·运维·ubuntu
cuijiecheng20183 小时前
Linux下Beyond Compare过期
linux·运维·服务器
喵叔哟3 小时前
20.部署与运维
运维·docker·容器·.net
HIT_Weston3 小时前
92、【Ubuntu】【Hugo】搭建私人博客:侧边导航栏(六)
linux·运维·ubuntu
CodeAllen嵌入式3 小时前
Windows 11 本地安装 WSL 支持 Ubuntu 24.04 完整指南
linux·运维·ubuntu
期待のcode4 小时前
前后端分离项目 Springboot+vue 在云服务器上的部署
服务器·vue.js·spring boot
AI 智能服务4 小时前
第6课__本地工具调用(文件操作)
服务器·人工智能·windows·php
码农小韩5 小时前
基于Linux的C++学习——指针
linux·开发语言·c++·学习·算法