-文件的归档和压缩

Posted 喝茶等下班

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了-文件的归档和压缩相关的知识,希望对你有一定的参考价值。

1.

tar 

-f --file指定备份文件

-t --list列出压缩包中包括哪些文件内容,不解包,查看包内容。

-C --directory指定解压位置

tar -cvf 也可以不写减号,直接tar cvf

2.

tar cvf /boot/grub2/ /etc/passwd test/ 

可以多个文件或者目录一起打包

3.

v是显示详细信息

[root@xuegod163 ~]# tar tf back.tar  
anaconda-ks.cfg
a.txt
[root@xuegod163 ~]# tar tvf back.tar
-rw------- root/root 1433 2022-01-13 10:56 anaconda-ks.cfg
-rw-r--r-- root/root 1189 2022-01-14 21:21 a.txt

4.

压缩

-g --gzip以gzip方式压缩 扩展名:tar.gz

-j 以bz2方式压缩的   扩展名:tar.bz2

-J 以xz方式压缩的    扩展名:tar.xz

对于 xz的压缩包,解压也可以-xvf,即不加J也可以

三种压缩中,xz压缩比例最高,bz2其次,gzip最低,另外tar包也稍有些压缩比例,比原文件或者目录要小,不过跟这三种压缩方式比差得太多了。

实际工作中bz2和gz压缩格式是用的最多的

5.

zip

压缩目录时:-r 递归压缩

unzip

解压缩时指定位置:-d

6.

gzip、bzip2、xz单独命令

gzip命令打包时会把源文件删除,所以一般不用。而bzip2、xz这两个工具可以通过加参数-k来保留下源文件

解压操作

gzip -d 文件

bzip2 -d 文件

xz -d 文件或者 unxz 文件

这三个命令了解一下即可,一般不用

7.

可以通过file命令了解是哪种压缩类型,但一般最好压缩时指定正确的格式后缀。

8.

查看文件大小排序

ll -tr 按时间排序

ll -Sr 按大小排序,-r从小到大

ll -S  按大小排序,从大到小

查看目录大小

du -sh 目录名 注s参数,类似于 ls 的-d参数

处理大量数据时要用sort

[root@xuegod163 ~]# cat /etc/passwd|sort|more
aaa:x:1000:1000::/home/aaa:/bin/bash
adm:x:3:4:adm:/var/adm:/sbin/nologin
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
halt:x:7:0:halt:/sbin:/sbin/halt
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
nobody:x:65534:65534:Kernel Overflow User:/:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
pesign:x:995:992:Group for the pesign signing daemon:/var/run/pesign:/sbin/nologin
polkitd:x:998:996:User for polkitd:/:/sbin/nologin
rngd:x:994:991:Random Number Generator Daemon:/var/lib/rngd:/sbin/nologin
root:x:0:0:root:/root:/bin/bash
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
sssd:x:996:993:User for sssd:/:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
systemd-coredump:x:999:997:systemd Core Dumper:/:/sbin/nologin
systemd-resolve:x:193:193:systemd Resolver:/:/sbin/nologin
tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nol
ogin
unbound:x:997:995:Unbound DNS resolver:/etc/unbound:/sbin/nologin

默认按字母规则进行排序

-n 数字排序

-M 按英文月份排序,如January、February、March、April

组合使用

-t 指定分隔符

-k 指定按第几列排序

查看目录并排序

[root@xuegod163 ~]# du -h /etc |sort -r|more
988K /etc/pki/ca-trust/extracted
980K /etc/selinux/targeted/contexts/files
96K /etc/pki/pesign-rh-test
96K /etc/pki/pesign
96K /etc/pam.d
9.3M /etc/selinux/targeted
9.3M /etc/selinux
8.8M /etc/udev
88K /etc/java/java-1.8.0-openjdk/java-1.8.0-openjdk-1.8.0.252.b09-2.el8_1.x86_64/lib
88K /etc/java/java-1.8.0-openjdk/java-1.8.0-openjdk-1.8.0.252.b09-2.el8_1.x86_64
--更多--

但这样会乱,因为大小后面有单位(G,M,K等),所以要在sort时也大小可读性排序,即sort -h,所以正确的应该如下:

[root@xuegod163 ~]# du -h /etc|sort -rh|more
23M /etc
9.3M /etc/selinux/targeted
9.3M /etc/selinux
8.8M /etc/udev
8.2M /etc/selinux/targeted/policy
1.4M /etc/pki
1.1M /etc/selinux/targeted/contexts
1000K /etc/pki/ca-trust
988K /etc/pki/ca-trust/extracted
980K /etc/selinux/targeted/contexts/files
--更多--










以上是关于-文件的归档和压缩的主要内容,如果未能解决你的问题,请参考以下文章

Linux下tar压缩与解压缩文件

linux系统文件归档(解/压缩)命令

《Linux学习并不难》归档和压缩:tar包的使用和管理

Linux文件归档和解压缩

第九课--09_04_Linux压缩及归档

-文件的归档和压缩