2.19 快速解压和压缩文件

image0

tar 格式压缩包

创建一个 tar 压缩包

# 将 demo 文件夹压缩成 demo.tar
$ python3 -m tarfile -c demo.tar demo

解压 tar 压缩包

# 解压 demo.tar 到 demo_new 文件夹下
$ python3 -m tarfile -e demo.tar demo_new

gzip 格式压缩包

创建一个 gzip 格式的压缩包(gzip 的输入,只能是一个文件,而不能是一个目录)

$ ls -l | grep message
-rw-r--r--@  1 MING  staff      97985  4 22 08:30 message

# 将 message.html 文件夹压缩成 message.gz
$  python3 -m gzip message

$ ls -l | grep message
-rw-r--r--@  1 MING  staff      97985  4 22 08:30 message
-rw-r--r--   1 MING  staff      24908  5  4 12:49 message.gz

解压一个 gzip 格式的压缩包

$ rm -rf message

$ ls -l | grep message
-rw-r--r--   1 MING  staff         87  5  4 12:51 message.gz

# 解压 message.gz
$ python3 -m gzip -d message.gz

$ ls -l | grep message
-rw-r--r--   1 MING  staff         62  5  4 12:52 message
-rw-r--r--   1 MING  staff         87  5  4 12:51 message.gz

zip 格式压缩包

创建一个 zip 格式的压缩包

$ ls -l | grep demo
drwxr-xr-x   3 MING  staff         96  5  4 12:44 demo

# 压缩  demo 文件夹为 demo.zip
$ python3 -m zipfile -c demo.zip demo

$ ls -l | grep demo
drwxr-xr-x   3 MING  staff         96  5  4 12:44 demo
-rw-r--r--   1 MING  staff      74890  5  4 12:55 demo.zip

解压一个 zip 格式的压缩包

$ rm -rf demo

$ ls -l | grep demo
-rw-r--r--   1 MING  staff      74890  5  4 12:55 demo.zip

$ python3 -m zipfile -e demo.zip demo

$ ls -l | grep demo
drwxr-xr-x   3 MING  staff         96  5  4 12:57 demo
-rw-r--r--   1 MING  staff      74890  5  4 12:55 demo.zip

image1