文件压缩和打包
关于压缩的常见扩展名:
*.gz
:gzip程序压缩的文件*.bz2
:bzip2程序压缩的文件*.xz
:xz程序压缩的文件
这些命令和程序只能对单一文件压缩与解压,但可以先把一堆文件打包后再压缩
打包文件扩展名:*.tar
打包软件tar
只负责打包,不负责压缩
如果既打包又压缩,扩展名为:
*.tar.gz
*.tar.bz2
*.tar.xz
gzip压缩命令
gzip支持压缩文件为*.gz
,解压文件*.gz
,*.Z
,*.zip
格式:
gzip [参数] 文件
参数:
不带参数:压缩
-d
:解压-v
:压缩,并展示压缩信息压缩默认会删除原文件,只保留压缩文件
要预览压缩文件内容,使用
zcat 文件
命令
例子:
[user1@qmmms ~]$ gzip -v services
services: 79.7% -- replaced with services.gz
[user1@qmmms ~]$ ls -l services.gz
-rw-r--r-- 1 user1 basic_users 136088 9月 12 10:46 services.gz
[user1@qmmms ~]$ gzip -d services.gz
zip
压缩一个目录:
zip -r archive_name.zip directory_to_compress
解压一个zip文件:
unzip archive_name.zip
其他压缩命令
bzip2 [参数] 文件 #使用bzip2压缩
bzcat 文件 #预览
xz [参数] 文件 #使用xz压缩
xzcat 文件 #预览
参数与gzip基本一样,见上
打包命令
格式:
tar [参数] [cv] [-f 新文件名] 文件 #打包+压缩
tar [参数] [tv] [-f 包] #预览包内内容
tar [参数] [xv] [-f 包] [-C 目录] #解压
参数:
-c
:打包-t
:预览-x
:解压
以上三个命令不能同时出现,可以搭配-v
实时查看处理的文件名
-z
:使用gzip-j
:使用bzip2-J
:使用xz
以上三个命令不能同时出现,注意扩展名配套
-C
:解压时表示目标目录-p
:保留原本权限和属性-P
:保留根目录
例子:
[root@qmmms home]# tar -zcv -f user1.tar.gz user1/
user1/
user1/services
user1/.viminfo
user1/tmp/
user1/tmp/test
user1/.lesshst
user1/.bash_logout
user1/dir_test/
user1/sayhi
user1/.bash_profile
user1/.bash_history
user1/doc
user1/.bashrc
[root@qmmms home]# tar -ztv -f user1.tar.gz
drwx------ user1/basic_users 0 2022-09-12 11:33 user1/
-rw-r--r-- user1/basic_users 670293 2022-09-12 10:46 user1/services
-rw------- user1/basic_users 805 2022-09-12 10:44 user1/.viminfo
drwxrwxrwt root/root 0 2022-09-04 23:05 user1/tmp/
-rw-r--r-- root/root 0 2022-09-04 23:05 user1/tmp/test
-rw------- user1/basic_users 45 2022-09-04 13:20 user1/.lesshst
-rw-r--r-- user1/basic_users 18 2021-11-25 00:33 user1/.bash_logout
drwxrwxrwT user1/basic_users 0 2022-09-02 17:24 user1/dir_test/
-rwxr-xr-x user1/basic_users 8360 2022-09-02 13:36 user1/sayhi
-rw-r--r-- user1/basic_users 193 2021-11-25 00:33 user1/.bash_profile
-rw------- user1/basic_users 8916 2022-09-12 11:33 user1/.bash_history
-rw------- user1/basic_users 12 2022-09-12 10:44 user1/doc
-rw-r--r-- user1/basic_users 231 2021-11-25 00:33 user1/.bashrc
[root@qmmms home]# tar -zxv -f user1.tar.gz -C ~
user1/
user1/services
user1/.viminfo
user1/tmp/
user1/tmp/test
user1/.lesshst
user1/.bash_logout
user1/dir_test/
user1/sayhi
user1/.bash_profile
user1/.bash_history
user1/doc
user1/.bashrc
最后更新于