准备工作
- [root@centos-01 ~]# cd /tmp/
- [root@centos-01 tmp]# ls
- 1.txt
- systemd-private-40c0e692674844949b91361dc6ab4a40-chronyd.service-6km7K9
- systemd-private-40c0e692674844949b91361dc6ab4a40-vgauthd.service-3W1kyg
- systemd-private-40c0e692674844949b91361dc6ab4a40-vmtoolsd.service-wJZPyD
- [root@centos-01 tmp]# mkdir mytest
- [root@centos-01 tmp]# cd mytest/
- [root@centos-01 mytest]# ls
- [root@centos-01 mytest]# find /etc/ -type f -name "*conf"
- /etc/lvm/lvm.conf
- /etc/lvm/lvmlocal.conf
- /etc/resolv.conf
- /etc/pki/ca-trust/ca-legacy.conf
- /etc/yum/pluginconf.d/fastestmirror.conf
- /etc/yum/pluginconf.d/langpacks.conf
- /etc/yum/protected.d/systemd.conf
- /etc/yum/version-groups.conf
- /etc/asound.conf
- /etc/sasl2/smtpd.conf
- /etc/logrotate.conf
- /etc/openldap/ldap.conf
- /etc/libuser.conf
- /etc/sestatus.conf
- /etc/yum.conf
- /etc/host.conf
- /etc/dracut.conf
- /etc/dbus-1/system.d/teamd.conf
- /etc/dbus-1/system.d/org.freedesktop.hostname1.conf
- /etc/dbus-1/system.d/org.freedesktop.import1.conf
- /etc/dbus-1/system.d/org.freedesktop.locale1.conf
- /etc/dbus-1/system.d/org.freedesktop.login1.conf
- /etc/dbus-1/system.d/org.freedesktop.machine1.conf
- /etc/dbus-1/system.d/org.freedesktop.systemd1.conf
- /etc/dbus-1/system.d/org.freedesktop.timedate1.conf
- /etc/dbus-1/system.d/org.freedesktop.PolicyKit1.conf
- /etc/dbus-1/system.d/wpa_supplicant.conf
- /etc/dbus-1/system.d/nm-dispatcher.conf
- /etc/dbus-1/system.d/nm-ifcfg-rh.conf
- /etc/dbus-1/system.d/org.freedesktop.NetworkManager.conf
- /etc/dbus-1/system.d/com.redhat.tuned.conf
- /etc/dbus-1/system.d/FirewallD.conf
- /etc/dbus-1/system.d/dnsmasq.conf
- /etc/dbus-1/session.conf
- /etc/dbus-1/system.conf
- /etc/depmod.d/dist.conf
- /etc/modprobe.d/tuned.conf
- /etc/systemd/bootchart.conf
- /etc/systemd/coredump.conf
- /etc/systemd/journald.conf
- /etc/systemd/logind.conf
- /etc/systemd/system.conf
- /etc/systemd/user.conf
- /etc/rsyslog.d/listen.conf
- /etc/X11/xorg.conf.d/00-keyboard.conf
- /etc/prelink.conf.d/nss-softokn-prelink.conf
- /etc/prelink.conf.d/fipscheck.conf
- /etc/prelink.conf.d/grub2.conf
- /etc/ld.so.conf
- /etc/ld.so.conf.d/mariadb-x86_64.conf
- /etc/ld.so.conf.d/kernel-3.10.0-693.el7.x86_64.conf
- /etc/nsswitch.conf
- /etc/udev/udev.conf
- /etc/NetworkManager/NetworkManager.conf
- /etc/libaudit.conf
- /etc/fuse.conf
- /etc/GeoIP.conf
- /etc/selinux/semanage.conf
- /etc/selinux/targeted/setrans.conf
- /etc/sysctl.conf
- /etc/krb5.conf
- /etc/security/pwquality.conf
- /etc/security/access.conf
- /etc/security/chroot.conf
- /etc/security/group.conf
- /etc/security/limits.conf
- /etc/security/limits.d/20-nproc.conf
- /etc/security/namespace.conf
- /etc/security/pam_env.conf
- /etc/security/sepermit.conf
- /etc/security/time.conf
- /etc/wpa_supplicant/wpa_supplicant.conf
- /etc/plymouth/plymouthd.conf
- /etc/tuned/tuned-main.conf
- /etc/vmware-tools/guestproxy-ssl.conf
- /etc/vmware-tools/vgauth.conf
- /etc/firewalld/firewalld.conf
- /etc/kdump.conf
- /etc/audisp/audispd.conf
- /etc/audisp/plugins.d/af_unix.conf
- /etc/audisp/plugins.d/syslog.conf
- /etc/audit/auditd.conf
- /etc/chrony.conf
- /etc/rsyslog.conf
- /etc/man_db.conf
- /etc/sudo-ldap.conf
- /etc/sudo.conf
- /etc/e2fsck.conf
- /etc/mke2fs.conf
- /etc/vconsole.conf
- /etc/locale.conf
- /etc/updatedb.conf
- /etc/dnsmasq.conf
- [root@centos-01 mytest]# find /etc/ -type f -name "*conf" -exec cat {} >> 2.txt \;
- [root@centos-01 mytest]# ls
- 2.txt
- [root@centos-01 mytest]# du -sh 2.txt
- 240K 2.txt
- [root@centos-01 mytest]# find /etc/ -type f -name "*conf" -exec cat {} >> 2.txt \;
- [root@centos-01 mytest]# du -sh 2.txt
- 476K 2.txt
- [root@centos-01 mytest]# find /etc/ -type f -name "*conf" -exec cat {} >> 2.txt \;
- [root@centos-01 mytest]# du -sh 2.txt
- 1.2M 2.txt
- [root@centos-01 mytest]# find /etc/ -type f -name "*conf" -exec cat {} >> 2.txt \;
- [root@centos-01 mytest]# du -sh 2.txt
- 1.2M 2.txt
- [root@centos-01 mytest]# find /etc/ -type f -name "*conf" -exec cat {} >> 2.txt \;
- [root@centos-01 mytest]# du -sh 2.txt
- 1.2M 2.txt
- [root@centos-01 mytest]# find /etc/ -type f -name "*conf" -exec cat {} >> 2.txt \;
- [root@centos-01 mytest]# du -sh 2.txt
- 2.2M 2.txt
- [root@centos-01 mytest]# wc -l 2.txt
- 36486 2.txt
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- 125
- 126
gzip压缩工具
语法:gzip [-dn] filename
(n为1-9的数字)
- “-d”:解压缩时使用
- “-n” (n为1-9的数字):压缩等级,第1级为最快压缩,但压缩量最小;第9级的压缩速度最慢,但压缩量最大。默认级别为6,“
--fast
”和“--best
”分别等价于“-1”和“-9”。
- [root@centos-01 mytest]# gzip 2.txt
- [root@centos-01 mytest]# ls
- 2.txt.gz
- [root@centos-01 mytest]# du -sh 2.txt.gz
- 376K 2.txt.gz
- [root@centos-01 mytest]# gzip -d 2.txt.gz
- [root@centos-01 mytest]# ls
- 2.txt
- [root@centos-01 mytest]# du -sh 2.txt
- 1.4M 2.txt
- [root@centos-01 mytest]# wc -l 2.txt
- 36486 2.txt
- [root@centos-01 mytest]# gzip -1 2.txt
- [root@centos-01 mytest]# du -sh 2.txt.gz
- 444K 2.txt.gz
- [root@centos-01 mytest]# gunzip 2.txt.gz
- [root@centos-01 mytest]# ls
- 2.txt
- [root@centos-01 mytest]# gzip -9 2.txt
- [root@centos-01 mytest]# du -sh 2.txt.gz
- 372K 2.txt.gz
- [root@centos-01 mytest]# ls
- 2.txt.gz
- [root@centos-01 mytest]# file 2.txt.gz
- 2.txt.gz: gzip compressed data, was "2.txt", from Unix, last modified: Fri May 4 10:49:46 2018, max compression
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- zcat命令查看压缩文件内容
[root@centos-01 mytest]# zcat 2.txt.gz
- 1
- [root@centos-01 mytest]# ls
- 2.txt.gz
- [root@centos-01 mytest]# gzip -d 2.txt.gz
- [root@centos-01 mytest]# gzip -c 2.txt > /tmp/2.txt.gz
- [root@centos-01 mytest]# ls
- 2.txt
- [root@centos-01 mytest]# ls /tmp/
- 1.txt systemd-private-ad61a62cb5b4492ca6ac55582093dd32-chronyd.service-yzD92d
- 2.txt.gz systemd-private-ad61a62cb5b4492ca6ac55582093dd32-vgauthd.service-inJewP
- mytest systemd-private-ad61a62cb5b4492ca6ac55582093dd32-vmtoolsd.service-Exaldt
- [root@centos-01 mytest]# file /tmp/2.txt.gz
- /tmp/2.txt.gz: gzip compressed data, was "2.txt", from Unix, last modified: Fri May 4 10:49:46 2018
- [root@centos-01 mytest]# gzip -d -c /tmp/2.txt.gz > /tmp/mytest/3.txt
- [root@centos-01 mytest]# ls
- 2.txt 3.txt
- [root@centos-01 mytest]# wc -l 2.txt 3.txt
- 36486 2.txt
- 36486 3.txt
- 72972 总用量
- [root@centos-01 mytest]# du -sh *.txt
- 1.4M 2.txt
- 1.4M 3.txt
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- gzip是不支持压缩目录的。
bzip2压缩工具
- [root@centos-01 mytest]# bzip2 2.txt
- -bash: bzip2: 未找到命令
- [root@centos-01 mytest]# yum install -y bzip2
- 1
- 2
- 3
语法:bzip2 [-dz] filename
- “-d”:解压缩
- “-z”:压缩
- [root@centos-01 mytest]# bzip2 2.txt
- [root@centos-01 mytest]# ls
- 2.txt.bz2 3.txt
- [root@centos-01 mytest]# du -sh 2.txt.bz2
- 160K 2.txt.bz2
- [root@centos-01 mytest]# bzip2 -d 2.txt.bz2
- [root@centos-01 mytest]# ls
- 2.txt 3.txt
- [root@centos-01 mytest]# bzip2 2.txt
- [root@centos-01 mytest]# bunzip2 2.txt.bz2
- [root@centos-01 mytest]# ls
- 2.txt 3.txt
- [root@centos-01 mytest]# ls /tmp/
- 1.txt systemd-private-604486059e93474a8b695802ff294d42-chronyd.service-nvD2qs
- 2.txt.gz systemd-private-604486059e93474a8b695802ff294d42-vgauthd.service-xKKbjw
- mytest systemd-private-604486059e93474a8b695802ff294d42-vmtoolsd.service-yaJKgA
- [root@centos-01 mytest]# bzip2 -c 2.txt > /tmp/3.txt.bz2
- [root@centos-01 mytest]# du -sh /tmp/3.txt.bz2
- 160K /tmp/3.txt.bz2
- [root@centos-01 mytest]# bzip2 -d -c /tmp/3.txt.bz2 > 4.txt
- [root@centos-01 mytest]# ls
- 2.txt 3.txt 4.txt
- [root@centos-01 mytest]# du -sh 4.txt
- 1.4M 4.txt
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- bzcat命令查看压缩文件内容
[root@centos-01 mytest]# bzcat /tmp/3.txt.bz2
- 1
- bzip2不可以压缩目录
xz压缩工具
- [root@centos-01 mytest]# xz 2.txt
- [root@centos-01 mytest]# ls
- 2.txt.xz 3.txt 4.txt
- [root@centos-01 mytest]# du -sh 2.txt.xz
- 56K 2.txt.xz
- [root@centos-01 mytest]# xz -d 2.txt.xz
- [root@centos-01 mytest]# ls
- 2.txt 3.txt 4.txt
- [root@centos-01 mytest]# xz 2.txt
- [root@centos-01 mytest]# unxz 2.txt.xz
- [root@centos-01 mytest]# ls
- 2.txt 3.txt 4.txt
- [root@centos-01 mytest]# ls /tmp/
- 1.txt systemd-private-604486059e93474a8b695802ff294d42-chronyd.service-nvD2qs
- 2.txt.gz systemd-private-604486059e93474a8b695802ff294d42-vgauthd.service-xKKbjw
- 3.txt.bz2 systemd-private-604486059e93474a8b695802ff294d42-vmtoolsd.service-yaJKgA
- mytest
- [root@centos-01 mytest]# xz -c 2.txt > /tmp/4.txt.xz
- [root@centos-01 mytest]# xz -d -c /tmp/4.txt.xz > ./1.txt
- [root@centos-01 mytest]# ll
- 总用量 5712
- -rw-r--r--. 1 root root 1460358 5月 4 20:42 1.txt
- -rw-r--r--. 1 root root 1460358 5月 4 10:49 2.txt
- -rw-r--r--. 1 root root 1460358 5月 4 20:28 3.txt
- -rw-r--r--. 1 root root 1460358 5月 4 20:30 4.txt
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- xzcat命令查看压缩文件内容
[root@centos-01 mytest]# xzcat /tmp/4.txt.xz
- 1
zip压缩工具
- [root@centos-01 mytest]# tree /tmp/
- /tmp/
- ├── 1.txt
- ├── 2.txt.gz
- ├── 3.txt.bz2
- ├── 4.txt.xz
- ├── mytest
- │ ├── 1.txt
- │ ├── 2.txt
- │ ├── 3.txt
- │ ├── 4.txt
- │ └── yourtest
- │ ├── 1.txt
- │ ├── 2.txt
- │ ├── 3.txt
- │ └── 4.txt
- ├── systemd-private-604486059e93474a8b695802ff294d42-chronyd.service-nvD2qs
- │ └── tmp
- ├── systemd-private-604486059e93474a8b695802ff294d42-vgauthd.service-xKKbjw
- │ └── tmp
- └── systemd-private-604486059e93474a8b695802ff294d42-vmtoolsd.service-yaJKgA
- └── tmp
- └── vmware-root
-
- 9 directories, 12 files
- [root@centos-01 mytest]# du -sh yourtest/
- 5.6M yourtest/
- [root@centos-01 mytest]# zip 2.txt.zip 2.txt
- -bash: zip: 未找到命令
- [root@centos-01 mytest]# yum install -y zip
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- [root@centos-01 mytest]# zip 2.txt.zip 2.txt
- adding: 2.txt (deflated 74%)
- [root@centos-01 mytest]# du -sh 2.txt.zip
- 376K 2.txt.zip
- [root@centos-01 mytest]# ls
- 1.txt 2.txt 2.txt.zip 3.txt 4.txt yourtest
- [root@centos-01 mytest]# zip -r yourtest.zip yourtest 3.txt
- adding: yourtest/ (stored 0%)
- adding: yourtest/3.txt (deflated 74%)
- adding: yourtest/4.txt (deflated 74%)
- adding: yourtest/2.txt (deflated 74%)
- adding: yourtest/1.txt (deflated 74%)
- adding: 3.txt (deflated 74%)
- [root@centos-01 mytest]# ls
- 1.txt 2.txt 2.txt.zip 3.txt 4.txt yourtest yourtest.zip
- [root@centos-01 mytest]# du -sh yourtest.zip
- 1.9M yourtest.zip
- [root@centos-01 mytest]# unzip
- -bash: unzip: 未找到命令
- [root@centos-01 mytest]# yum install -y unzip
- [root@centos-01 mytest]# unzip yourtest.zip
- Archive: yourtest.zip
- replace yourtest/3.txt? [y]es, [n]o, [A]ll, [N]one, [r]ename: n
- replace yourtest/4.txt? [y]es, [n]o, [A]ll, [N]one, [r]ename: y
- inflating: yourtest/4.txt
- replace yourtest/2.txt? [y]es, [n]o, [A]ll, [N]one, [r]ename: A
- inflating: yourtest/2.txt
- inflating: yourtest/1.txt
- inflating: 3.txt
- [root@centos-01 mytest]# mkdir test
- [root@centos-01 mytest]# unzip 2.txt.zip -d test/
- Archive: 2.txt.zip
- inflating: test/2.txt
- [root@centos-01 mytest]# ls
- 1.txt 2.txt 2.txt.zip 3.txt 4.txt test yourtest yourtest.zip
- [root@centos-01 mytest]# unzip -l yourtest.zip
- Archive: yourtest.zip
- Length Date Time Name
- --------- ---------- ----- ----
- 0 05-04-2018 21:27 yourtest/
- 1460358 05-04-2018 21:27 yourtest/3.txt
- 1460358 05-04-2018 21:27 yourtest/4.txt
- 1460358 05-04-2018 21:27 yourtest/2.txt
- 1460358 05-04-2018 21:27 yourtest/1.txt
- 1460358 05-04-2018 20:28 3.txt
- --------- -------
- 7301790 6 files
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
tar打包工具
tar本身为一个打包工具,可以把目录打包成一个文件,它的好处是它把所有文件整合成一个大文件整体,方便拷贝或者移动。
语法:tar [-zjxcvfpP] filename
- “-z”:同时用gzip压缩
- “-j”:同时用bzip2压缩
- “-x”:解包或者解压缩
- “-t”:查看tar包里面的文件
- “-c”:建立一个tar包或者压缩文件包
- “-v”:可视化
- “-f”:后面跟文件名,压缩时跟“-f filename”,意思是压缩后的文件名为filename,解压时跟“-f 文件名”,意思是解压filename。需要注意,如果是多个参数组合的情况下带有“-f”,请把“-f”写到最后面。
- “-p”:使用原文件的属性,压缩前什么属性压缩后还什么属性。
- “-P”:可以使用绝对路径。
--exclude filename
:在打包或者压缩时,不要将filename文件包括在内。
- [root@centos-01 mytest]# ls
- 1.txt 2.txt 2.txt.zip 3.txt 4.txt test yourtest yourtest.zip
- [root@centos-01 mytest]# tar -cvf yourtest.tar yourtest
- yourtest/
- yourtest/3.txt
- yourtest/4.txt
- yourtest/2.txt
- yourtest/1.txt
- [root@centos-01 mytest]# ls
- 1.txt 2.txt 2.txt.zip 3.txt 4.txt test yourtest yourtest.tar yourtest.zip
- [root@centos-01 mytest]# tar -xvf yourtest.tar
- yourtest/
- yourtest/3.txt
- yourtest/4.txt
- yourtest/2.txt
- yourtest/1.txt
- [root@centos-01 mytest]# tar -tf yourtest.tar
- yourtest/
- yourtest/3.txt
- yourtest/4.txt
- yourtest/2.txt
- yourtest/1.txt
- [root@centos-01 mytest]# ls
- 1.txt 2.txt 2.txt.zip 3.txt 4.txt test yourtest yourtest.tar yourtest.zip
- [root@centos-01 mytest]# tar -cvf yourtest.tar --exclude 1.txt yourtest
- yourtest/
- yourtest/3.txt
- yourtest/4.txt
- yourtest/2.txt
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
tar打包并压缩
- [root@centos-01 mytest]# tar -zcvf yourtest.tar.gz yourtest
- yourtest/
- yourtest/3.txt
- yourtest/4.txt
- yourtest/2.txt
- yourtest/1.txt
- [root@centos-01 mytest]# du -sh yourtest.tar.gz
- 1.5M yourtest.tar.gz
- [root@centos-01 mytest]# du -sh yourtest
- 5.6M yourtest
- [root@centos-01 mytest]# tar -jcvf yourtest.tar.bz2 yourtest
- yourtest/
- yourtest/3.txt
- yourtest/4.txt
- yourtest/2.txt
- yourtest/1.txt
- [root@centos-01 mytest]# du -sh yourtest.tar.bz2
- 544K yourtest.tar.bz2
- [root@centos-01 mytest]# tar -Jcvf yourtest.tar.xz yourtest
- yourtest/
- yourtest/3.txt
- yourtest/4.txt
- yourtest/2.txt
- yourtest/1.txt
- [root@centos-01 mytest]# du -sh yourtest.tar.xz
- 60K yourtest.tar.xz
- [root@centos-01 mytest]# ls
- 1.txt 2.txt.zip 4.txt yourtest yourtest.tar.bz2 yourtest.tar.xz
- 2.txt 3.txt test yourtest.tar yourtest.tar.gz yourtest.zip
- [root@centos-01 mytest]# tar -tf yourtest.tar.gz
- yourtest/
- yourtest/3.txt
- yourtest/4.txt
- yourtest/2.txt
- yourtest/1.txt
- [root@centos-01 mytest]# tar -tf yourtest.tar.bz2
- yourtest/
- yourtest/3.txt
- yourtest/4.txt
- yourtest/2.txt
- yourtest/1.txt
- [root@centos-01 mytest]# tar -tf yourtest.tar.xz
- yourtest/
- yourtest/3.txt
- yourtest/4.txt
- yourtest/2.txt
- yourtest/1.txt
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48