tar 压缩 打包
Posted 晨曦007
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tar 压缩 打包相关的知识,希望对你有一定的参考价值。
tar 压缩 打包
1.打包
-zcvf 打包组合 简写zcf
-z 压缩
-c 创建
-v 显示过程,可以省略
-f 针对文件
tar zcf 压缩包名字 要打包的东西
练习1: 吧/etc目录打包到/opt下面
tar zcvf /opt/etc.tar.gz /etc
2.查看包里内容
tar tf 包名
-t 查看包里内容
tar tf xx.tar.gz
3.解包
组合zxvf,缩写xf
-x 解压
tar xf xxx.tar.gz 解压到当前目录
-C 制定路径解压
tar xf xxx.tar.gz -C /xxx
-p 保持属性(zcfp)
-j 通过bzip2命令压缩或解压(.tar.bz2) 非常少
tar jcvf xx.tar.bz2 包名
排除打包
--exclude 在打包的时候写入需要排除文件或目录
环境
mkdir /oldboy -p && cd /oldboy/
touch file{1..5}
练习排除打包
tar zcvf /tmp/pai.tar.gz ./oldboy/ --exclude=file1
排除file1
--exclude=file{1..3} 排除file1-file3
--exclude=file{1,3} 排除file1,file3
查看结果
tar tf /tmp/pai.tar.gz
从文件中排除打包
--exclude-from(-X)
tar zcvfX /xxx.tar.gz 包含排除的文件名的文件 路径
建立排除的文件,内容就是排除的文件名
cat >paichu.log<<EOF
file1
file5
EOF
tar zcvfX /tmp/pai.tar.gz paichu.log ./oldboy/
排除 file1 file5 在进行打包
-h 打包软连接 会把原文件进行打包
tar zcvfh /backup/rc.local_1.tar.gz /etc/rc.local
--hard-dereference 打包硬链接
日期 时间命令 date,别和data搞混这是数据
date -s "2030/5/14" 修改日期
date -s "2030/5/14 23:45:12" 修改日期
hclock -w 写入到bios永久生效
工作中服务器的时间是定时和互联网时间同步的。
自己配置定时同步(设置搭建时间服务器) ntp
练习:
date -s "2030/5/14"
2030年 05月 14日 星期二 00:00:00 CST
date
2030年 05月 14日 星期二 00:00:07 CST
date -s "2030/5/14 23:45:12"
2030年 05月 14日 星期二 23:45:12 CST
clock -w
特定时间显示
date +%F 2030-05-15
date +%Y 2030
date +%m 05
date +%d 15
date +%Y-%m-%d 2030-05-15
date +%H 00
date +%M 07
date +%S 51
date +%H:%M:%S 00:07:51
date +%Y-%m-%d\\ %H:%M:%S 2030-05-15 00:08:16
date +%F\\ %T 2030-05-15 00:09:08
年Y月m日d时H分M秒S
Year Month day hour minute secon
看周几
date +%w 3
date +%F -d 显示时间
过去的时间(-表示过去) 未来的时间(+表示未来)
date +%F -d "+/+3day" 2030-05-18/2030-05-12
date +%F -d "-/+3month" 2030-02-15/2030-08-15
date +%F -d "+/-3year" 2033-05-15/2027-05-15
date +%F -d "-/+24hour" 2030-05-14/2030-05-16
date +%F -d "-/+1440min" 2030-05-14/2030-05-16
date +%F -d "-/+86400sec" 2030-05-14/2030-05-16
date +%F 2030-05-15
打包带日期的压缩包名
tar zcf /tmp/etc_$(date +%F).tar.gz /etc/ 打包备份
tar zcf /backup/bak_etc_$(date +%F).tar.gz /etc 打包备份
案例2:查找/etc下扩展名是.conf的所有文件,打包备份到/backup,文件名含有日期。
find+tar组合
(1)查找/etc下扩展名是.conf的所有文件:
find /etc/ -name "*.conf" -type f
(2) 解答:
方法1:
tar zcf /backup/conf_bak_$(date +%F) $(find /etc/ -name "*.conf" -type f)
方法2:
find /etc/ -name "*.conf" -type f |xargs tar zcf /backup/conf_bak_$(date +%F)
$()和``反引号等价
以上是关于tar 压缩 打包的主要内容,如果未能解决你的问题,请参考以下文章
压缩打包介绍gzip压缩工具bzip2压缩工具xz压缩工具tar打包工具打包并压缩