我是靠谱客的博主 阔达火车,最近开发中收集的这篇文章主要介绍Linux || 压缩类命令,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

为什么官方网站提供压缩文件下载?
考虑到用户的网络,下载的时间

为什么需要文件(文件夹)进行压缩?

纯文本的文件压缩可以节约非常多的空间
图片和视频,音频,压缩不能节约非常多的空间

你知道那些压缩软件?

压缩文件的格式:
Windows里:
    zip
    rar
    iso
    7zip

常见压缩软件:
    winrar --》.rar --》推荐
    好压
    7z

.zip格式的压缩文件可以在Linux和Windows里解压
.tar.gz 也可以


zip与unzip

[root@jack lianxi2]# yum install zip -y

[root@jack lianxi2]# zip chen.zip chen.txt
adding: chen.txt (stored 0%)
[root@jack lianxi2]# zip passwd.zip passwd
保留源文件进行压缩
adding: passwd (deflated 63%)
[root@jack lianxi2]# ls
backup_log.sh  chen.txt  guangxi   hunan        passwd
bigfile.sh     chen.zip  hejin.sh  li.sh  passwd.zip
[root@jack lianxi2]# ll -h
总用量 28K
-rw-r--r--. 1 root root  246 3月  18 20:42 backup_log.sh
-rw-r--r--  1 root root  141 8月  18 21:35 bigfile.sh
-rw-r--r--  1 root root    0 8月  21 00:14 chen.txt
-rw-r--r--  1 root root  176 8月  21 00:14 chen.zip
drwxr-xr-x  3 root root   17 8月  18 20:32 guangxi
-rw-r--r--  1 root root  303 8月  18 21:10 hejin.sh
drwxr-xr-x  3 root root   23 8月  20 23:26 hunan
-rw-r--r--  1 root root  133 8月  20 16:54 li.sh
-rw-r--r--  1 root root 2.5K 8月  21 00:13 passwd
-rw-r--r--  1 root root 1.1K 8月  21 00:14 passwd.zip

[root@jack backup]# unzip chen
Archive:  chen.zip
extracting: chen.txt           
[root@jack backup]# ls
chen.txt  chen.zip

[root@jack lianxi2]# zip -r backup.zip backup
-r 是对文件和文件夹进行压缩
  adding: backup/ (stored 0%)
  adding: backup/chen.zip (stored 0%)
  adding: backup/chen.txt (stored 0%)
[root@jack lianxi2]# ls
backup        chen.txt  hejin.sh  passwd
backup.zip     chen.zip  hunan     passwd.zip

gzip与gunzip

[root@jack backup]# gzip passwd
gzip 是直接在源文件上打压缩包的
[root@jack backup]# ls
chen.txt  chen.zip  passwd.gz  passwd.zip
[root@jack backup]# gunzip passwd.gz
[root@jack backup]# ls
chen.txt  chen.zip  passwd  passwd.zip

[root@jack backup]# ls
chen.txt  chen.zip  passwd  passwd.zip
[root@jack backup]# zcat passwd.zip --》查看压缩文件里的内容
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin

xz与unxz
[root@jack backup]# xz passwd  打压缩
[root@jack backup]# ls
chen.txt  chen.zip  passwd.xz  passwd.zip
[root@jack backup]# unxz passwd.xz  解压缩
[root@jack backup]# ls
chen.txt  chen.zip  passwd  passwd.zip
100M --》xz --》30M

bzip2与bunzip2
[root@jack backup]# bzip2 passwd
[root@jack backup]# ls
chen.txt  chen.zip  passwd.bz2  passwd.zip
[root@jack backup]# unbzip2 passwd.bz2
-bash: unbzip2: 未找到命令
[root@jack backup]# bunzip2 passwd.bz2
[root@jack backup]# ls
chen.txt  chen.zip  passwd  passwd.zip


总结:
    zip --》.zip --》unzip
    gzip --》.gz --》gunzip ---》推荐
    xz --》.xz --》unxz --》推荐
    bzip2 --》.bz2 --》bunzip2


tar 是制作归档文件,解压归档文件
格式:tar [选项]... 归档文件 源文件或目录
常用命令选项
-c:创建.tar格式的包文件 create 
-x:解开.tar格式的包文件 extract
-v:输出详细信息
-f:表示使用归档文件 file
-t:列表查看包内的文件 list

归档文件:理解为一个打包的文件,可以包含很多个文件--》没压缩
压缩文件:可以是在归档文件的基础上,进行压缩

[root@jack chen]# tar cf sc.tar he liu song.txt zhang.txt
[root@jack chen]# ls
he  liu  sc.tar  song.txt  zhang.txt
[root@jack chen]# tar tf sc.tar
he/
liu/
song.txt
zhang.txt
[root@jack chen]# gzip sc.tar
[root@jack chen]# ls
he  liu  sc.tar.gz  song.txt  zhang.txt

tar 
 -z --》调用gzip对归档文件进行压缩
 -j --》bzip2
 -J --》xz

[root@jack chen]# tar czf sc2.tar.gz he liu zhang.txt song.txt
[root@jack chen]# ls
he  liu  sc2.tar.gz  sc.tar.gz  song.txt  zhang.txt
[root@jack chen]# tar cjf sc3.tar.bz2 song.txt zhang.txt
[root@jack chen]# ls
he  liu  sc2.tar.gz  sc3.tar.bz2  sc.tar.gz  song.txt  zhang.txt
[root@jack chen]# tar cJf sc4.tar.xz liu he song.txt
[root@jack chen]# ls
he   sc2.tar.gz   sc4.tar.xz  song.txt
liu  sc3.tar.bz2  sc.tar.gz   zhang.txt

file
[root@jack chen]# file sc2.tar.gz
sc2.tar.gz: gzip compressed data, last modified: Sat Aug 20 17:13:44 2022, from Unix, original size 10240
[root@jack chen]# file sc3.tar.bz2
sc3.tar.bz2: bzip2 compressed data, block size = 900k
[root@jack chen]# file sc4.tar.xz
sc4.tar.xz: XZ compressed data


创建压缩文件的例子
[root@jack chen]# touch huangjuan.txt
[root@jack chen]# ls
huangjuan.txt
[root@jack chen]# tar -czf huangjuan.tar.gz huangjuan.txt
[root@jack chen]# ls
huangjuan.tar.gz  huangjuan.txt
[root@jack chen]# file huangjuan.tar.gz
huangjuan.tar.gz: gzip compressed data, last modified: Sat Aug 20 17:22:01 2022, from Unix, original size 10240
[root@jack chen]# tar -cjf huangjuan.tar.bz2 huangjuan.txt
[root@jack chen]# ls
huangjuan.tar.bz2  huangjuan.tar.gz  huangjuan.txt
[root@jack chen]# tar -cJf huangjuan.tar.xz huangjuan.txt
[root@jack chen]# ls
huangjuan.tar.bz2  huangjuan.tar.gz  huangjuan.tar.xz  huangjuan.txt
[root@jack chen]# file huangjuan.tar.bz2
huangjuan.tar.bz2: bzip2 compressed data, block size = 900k
[root@jack chen]# file huangjuan.tar.xz
huangjuan.tar.xz: XZ compressed data
==========
查看压缩文件里的内容
[root@jack chen]# tar -tf huangjuan.tar.gz
huangjuan.txt
[root@jack chen]# tar -tf huangjuan.tar.xz
huangjuan.txt
[root@jack chen]# tar -tf huangjuan.tar.bz2
huangjuan.txt
==========
[root@jack chen]# tar czfv huangjuan.tar.gz huangjuan.txt boot
后面打包的压缩文件会替换原来的压缩包里的内容
==========
解压文件
[root@jack chen]# tar xf huangjuan.tar.gz
[root@jack chen]# ls
boot               huangjuan.tar.gz  huangjuan.txt
huangjuan.tar.bz2  huangjuan.tar.xz


绝对路径:打压缩 --》指定路径
新建/backup 文件夹
mkdir -p /backup
将/boot目录和/etc/passwd文件,打包压缩存放到/backup目录下,叫boot_passwd.tar.gz
tar czf /backup/boot_passwd.tar.gz /etc/passwd /boot
[root@jack backup]# tar czf /backup/boot_passwd.tar.gz /etc/passwd /boottar: 从成员名中删除开头的“/”
tar: 从硬连接目标中删除开头的“/” -->为什么要在打压缩包的时候,将绝对路径的/删除
这样解压的时候就会把压缩包里的文件放在当前目录下

mkdidr -p /lianxi/tar
cd /lianxi/tar
cp /etc/hosts /etc/passwd .
cp -r /boot .
[root@jack tar]# tar czf boot.tar.gz hosts passwd boot
[root@jack tar]# tar tf boot.tar.gz
[root@jack tar]# tar cjf host_passwd.tar.bz2 hosts passwd
[root@jack tar]# ls
boot  boot.tar.gz  host_passwd.tar.bz2  hosts  passwd
[root@jack tar]# tar tf host_passwd.tar.bz2 
tar cJf boot_pw_log.tar.xz /boot /etc/passwd /var/log
mkdir /bak -p
cp /lianxi/boot_pw_log.tar.xz /bak
tar xf  boot_pw_log.tar.xz


最后

以上就是阔达火车为你收集整理的Linux || 压缩类命令的全部内容,希望文章能够帮你解决Linux || 压缩类命令所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(55)

评论列表共有 0 条评论

立即
投稿
返回
顶部