Utiliser des scripts Python pour compresser et décompresser des fichiers sur la plateforme Linux est une méthode très pratique et efficace. Dans cet article, nous expliquerons comment utiliser Python pour écrire des scripts permettant de compresser et décompresser des fichiers, et fournirons des exemples de code spécifiques.
1. Compression de fichiers
La compression de fichiers consiste à regrouper et compresser un ou plusieurs fichiers en un seul fichier afin de réduire l'espace et le temps de transmission du fichier. Sur la plate-forme Linux, nous pouvons utiliser le module zipfile de Python pour implémenter la compression de fichiers.
Voici un exemple qui montre comment utiliser un script Python pour compresser des fichiers :
import zipfile import os def compress_files(source_dir, zip_file): with zipfile.ZipFile(zip_file, 'w') as zipf: for root, _, files in os.walk(source_dir): for file in files: file_path = os.path.join(root, file) zipf.write(file_path, os.path.relpath(file_path, source_dir)) print('文件压缩完成!') source_dir = '/path/to/source/dir' # 待压缩的文件夹路径 zip_file = '/path/to/zip/file.zip' # 压缩后的文件路径 compress_files(source_dir, zip_file)
Dans cet exemple, nous définissons une fonction compress_files
qui reçoit deux paramètres : source_dir< /code> et <code>zip_file
représentent respectivement le chemin du dossier à compresser et le chemin du fichier compressé. Dans le corps de la fonction, nous utilisons zipfile.ZipFile
pour créer un objet ZipFile, puis utilisons os.walk
pour parcourir tous les fichiers du dossier et les écrire dans le fichier compressé. fichier au milieu. compress_files
函数,该函数接收两个参数:source_dir
和zip_file
,分别代表待压缩的文件夹路径和压缩后的文件路径。在函数体内,我们使用zipfile.ZipFile
创建了一个ZipFile对象,然后使用os.walk
遍历文件夹中的所有文件,并将其写入到压缩文件中。
执行上述代码后,我们可以在指定的路径下找到一个名为file.zip
的压缩文件,里面包含了source_dir
文件夹中的所有文件。
二、文件解压缩
文件解压缩是将压缩文件还原为原始的文件,并恢复文件的完整目录结构。同样地,我们可以使用Python的zipfile模块来实现文件的解压缩。
下面是一个例子,演示如何使用Python脚本来解压缩文件:
import zipfile import os def extract_files(zip_file, dest_dir): with zipfile.ZipFile(zip_file, 'r') as zipf: zipf.extractall(dest_dir) print('文件解压缩完成!') zip_file = '/path/to/zip/file.zip' # 待解压缩的文件路径 dest_dir = '/path/to/destination/dir' # 解压缩后文件的存放路径 extract_files(zip_file, dest_dir)
在这个例子中,我们定义了一个extract_files
函数,该函数接收两个参数:zip_file
和dest_dir
,分别代表待解压缩的文件路径和解压缩后文件的存放路径。在函数体内,我们使用zipfile.ZipFile
创建了一个ZipFile对象,然后使用extractall
file.zip
dans le chemin spécifié, qui contient tous les fichiers du dossier source_dir
. 2. Décompression de fichierLa décompression de fichier consiste à restaurer le fichier compressé dans le fichier d'origine et à restaurer la structure complète des répertoires du fichier. De même, nous pouvons utiliser le module zipfile de Python pour décompresser des fichiers. Voici un exemple qui montre comment utiliser un script Python pour décompresser des fichiers : rrreee
Dans cet exemple, nous définissons une fonctionextract_files
qui reçoit deux paramètres : zip_file
et dest_dir
représentent respectivement le chemin du fichier à décompresser et le chemin de stockage du fichier décompressé. Dans le corps de la fonction, nous utilisons zipfile.ZipFile
pour créer un objet ZipFile, puis utilisons la fonction extractall
pour extraire le contenu du fichier compressé dans le dossier cible spécifié. 🎜🎜Après avoir exécuté le code ci-dessus, le contenu du fichier compressé sera restauré dans le dossier cible et la structure de répertoires d'origine sera conservée. 🎜🎜3. Résumé🎜🎜L'utilisation de scripts Python pour compresser et décompresser des fichiers est une méthode très pratique et efficace sous la plateforme Linux. En utilisant le module zipfile de Python, nous pouvons facilement implémenter des opérations de packaging, de compression et de décompression de fichiers. 🎜🎜J'espère que les exemples de code ci-dessus pourront vous aider et vous donner une meilleure compréhension de la façon d'utiliser les scripts Python pour compresser et décompresser des fichiers sur la plate-forme Linux. Bonne écriture ! 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!