共绩科技
共绩科技

最佳实践

如何在 JupyterLab 快速解压文件

小技巧:先在侧边栏中点击进入目标文件夹,再点击 notebook 或者 终端,这样可以直接在目标文件夹下快速在目标文件夹内开始下一步操作

小技巧:先在侧边栏中点击进入目标文件夹,再点击 notebook 或者 终端,这样可以直接在目标文件夹下快速在目标文件夹内开始下一步操作

【数据安全必读】

系统盘与数据盘均为本地 SSD,无冗余,单点故障可能导致数据永久丢失。

请务必将重要数据实时备份至「共享存储卷」或本地,共绩算力对本地盘损坏及数据丢失不承担任何责任。

立即开通共享存储卷,获得企业级冗余 + 跨区域同步,彻底告别数据丢失: 共享存储卷使用说明

如何在 JupyterLab 快速解压文件示意图

1.使用 Shell 命令 (最常用)

这是最直接、最灵活的方式。Jupyter Notebook 单元格支持直接执行 Shell 命令,只需在命令前加上感叹号 ! 即可。

  1. 打开一个 Notebook (.ipynb 文件)
  2. 在新的单元格中,根据你的文件类型输入相应的命令。

1.1 解压 .zip 文件

使用 unzip 命令。

基本解压到当前目录:

!unzip your_file_name.zip

解压到指定文件夹 (推荐)

!mkdir -p unzipped_data

!unzip your_file_name.zip -d unzipped_data/

1.2 解压 .tar.gz.tgz 文件

使用 tar 命令。

  • 基本解压:
  • x 代表 extract (提取),z 代表 gzip 格式,v 代表 verbose (显示过程),f 代表 file (指定文件名)。
!tar -xzvf your_archive_name.tar.gz
  • 解压到指定文件夹 (推荐):
  • 使用 -C (大写 C) 选项来指定目标目录。
!mkdir -p untarred_data

!tar -xzvf your_archive_name.tar.gz -C untarred_data/

1.3 解压 .tar.bz2.tbz2 文件

同样使用 tar 命令,只是把 z (gzip) 换成 j (bzip2)。

!tar -xjvf your_archive_name.tar.bz2 -C destination_folder/

1.4 解压 .tar 文件 (无压缩)

如果只是一个 .tar 包,去掉压缩选项 zj

!tar -xvf your_archive_name.tar -C destination_folder/

2.使用 Python 标准库 (更具编程性)

如果你的工作流程是全自动化的 Python 脚本,或者希望在代码中处理解压逻辑(如错误处理),使用 Python 库是更好的选择。

2.1 解压 .zip 文件 (使用 zipfile 库)

import zipfile
import os

zip_path = 'your_file_name.zip'
extract_path = 'unzipped_data_python'# 创建目标文件夹
os.makedirs(extract_path, exist_ok=True)

    zip_ref.extractall(extract_path)

print(f"文件已解压到:{extract_path}")

2.2 解压 .tar 文件 (包括 .gz, .bz2) (使用 tarfile 库)

tarfile 库非常智能,可以自动识别压缩类型。

import tarfile
import os

tar_path = 'your_archive_name.tar.gz' # .tar.gz, .tgz, .tar.bz2, .tar 都可以
extract_path = 'untarred_data_python'# 创建目标文件夹
os.makedirs(extract_path, exist_ok=True)

    tar_ref.extractall(path=extract_path)

print(f"文件已解压到:{extract_path}")

2.3 使用 JupyterLab 内置终端

JupyterLab 自带一个功能完整的终端模拟器,这和直接在系统的命令行操作完全一样。

  1. 在 JupyterLab 启动器页面点击 Terminal,或者通过菜单 File -> New -> Terminal 打开。
  2. 在打开的终端窗口中,直接输入标准的 shell 命令(注意:这里不需要加 !)。
unzip your_file_name.zip -d destination_folder

tar -xzvf your_archive_name.tar.gz -C destination_folder

3.使用 JupyterLab 扩展 (图形化操作)

对于喜欢点击操作的用户,可以安装社区开发的扩展来实现右键解压。一个不错的选择是 jupyterlab-unfold

安装扩展 (在 JupyterLab 终端或系统终端中执行):

pip install jupyterlab-unfold

或者使用 conda:

mamba install -c conda-forge jupyterlab-unfold

重启 JupyterLab

安装成功后,在左侧的文件浏览器中,你只需右键点击压缩文件(如 .zip.tar.gz),就会在菜单中看到 “Unfold here” (在此处解压) 的选项。点击即可完成解压。

4.总结与推荐

方式 优点 缺点 适用场景
1. Shell 命令 (!) 最快捷、最常用,无需切换界面 需要记住不同格式的命令 快速查看数据、一次性解压任务
2. Python 库 可编程、可移植,能集成到自动化脚本中 代码稍长,不如 ! 命令直接 数据预处理流程、需要精细控制或错误处理的脚本
3. JupyterLab 终端 功能最强大,与标准 Linux/macOS 终端体验一致 需要额外打开一个终端窗口 需要执行复杂 shell 命令或交互式操作时
4. GUI 扩展 无需代码,操作直观 需要额外安装和配置扩展 偏好图形化界面、不熟悉命令行的用户