Linux下压缩工具gzip和归档工具tar及其实战shell应用
第一章:gzip的使用技巧
gzip [option]... file...
-d: 解压缩,相当于gunzip;
-#: 指定压缩比,默认是6,数字越大压缩比越大( 1-9);
-c: 将压缩结果输出至标准输出;
gzip -c FILE >/path/to/somefile.gz
------------------- 实战检验 ----------------------------------
[root@Franklin13 ~]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)
[root@Franklin13 tmp]# cp /var/log/messages ./
..
[root@Franklin13 tmp]# ll -h
total 384K
-rw-------. 1 root root 383K Nov 11 09:32 messages
drwx------. 3 root root 17 Nov 11 09:25 systemd-private-52ebfc42ca98403dac9fc0fb58c32550-cups.service-cTb8ef
drwx------. 3 root root 17 Nov 11 09:25 systemd-private-52ebfc42ca98403dac9fc0fb58c32550-mariadb.service-mZcFLK
drwx------. 3 root root 17 Nov 11 09:25 systemd-private-52ebfc42ca98403dac9fc0fb58c32550-vgauthd.service-6oAkmZ
drwx------. 3 root root 17 Nov 11 09:25 systemd-private-52ebfc42ca98403dac9fc0fb58c32550-vmtoolsd.service-3XlTEL
[root@Franklin13 tmp]# gzip -c -9 messages>/tmp/messages-by-gzip.gz ( 加 -c可以压缩后保留源文件 )
[root@Franklin13 tmp]# ll -h
total 488K
-rw-------. 1 root root 383K Nov 11 09:32 messages
-rw-------. 1 root root 51K Nov 11 09:33 messages2.gz
-rw-r--r--. 1 root root 51K Nov 11 09:35 messages-by-gzip.gz
drwx------. 3 root root 17 Nov 11 09:25 systemd-private-52ebfc42ca98403dac9fc0fb58c32550-cups.service-cTb8ef
drwx------. 3 root root 17 Nov 11 09:25 systemd-private-52ebfc42ca98403dac9fc0fb58c32550-mariadb.service-mZcFLK
drwx------. 3 root root 17 Nov 11 09:25 systemd-private-52ebfc42ca98403dac9fc0fb58c32550-vgauthd.service-6oAkmZ
drwx------. 3 root root 17 Nov 11 09:25 systemd-private-52ebfc42ca98403dac9fc0fb58c32550-vmtoolsd.service-3XlTEL
第二章:tar的使用技巧
-------------如上为 tar命令的解析 ---------------------
实战检验 tar的使用
[root@Franklin13 tmp]# tar -tf mylog.tar
boot.log
vmware-vmsvc.log
vmware-vmusr.log
wpa_supplicant.log
Xorg.0.log
Xorg.1.log
Xorg.9.log
yum.log
[root@Franklin13 tmp]# tar -xf mylog.tar -C /tmp/test (解压并展开 tar包中内容到 /tmp/test 中 )
[root@Franklin13 tmp]# date +%Y/%-m%d-%H%M
2019/1111-1026
[root@Franklin13 tmp]#
[root@Franklin13 tmp]# date
Mon Nov 11 10:26:12 CST 2019
第三章:如何用 tar结合脚本和 crontab服务来实现自动备份 /etc 目录
先写好脚本,再 bash 脚本测试发现没有问题
------编辑 crontab文件,然后等待半小时看是否有文件创建
但发现时间正好是逢 30分钟,故查 crontab的日志并发现 crontab-etc-2019-1111-1230.tar.gz 的确创建了。
第四章:如何结合tr 和 cut文本处理工具来编写自动取 ip的脚本
[root@Franklin13 ~]# ifconfig ens33|grep -A 1 "ens33"|tail -1|tr -s " " %|cut -d"%" -f3
192.168.1.19
然后查好系统的默认bash后,开始编写脚本
[root@Franklin13 ~]# echo $BASH
/bin/bash
[root@Franklin13 shell]# cat myip.sh
#!/bin/bash
uptime
ip=$(ifconfig $1|grep -A 1 "$1"|tail -1|tr -s " " %|cut -d% -f3)
echo "The sever's IP is $ip"
-------------------------------------------------
再实际测试发现OK
----------------------全文完,版权所有违者必究---------------------------