(day4)Linux 系统打包和时间命令

一、tar        打包压缩

-zcvf        打包组合【简写:zcf】

z   压缩

c   创建

v  显示过程

f  针对文件

1、tar zcf 【压缩包名字.tar.gz】【要打包的东西】

        [root@qulan /]# tar zcvf /opt/etc.tar.gz ./etc/
        [root@qulan /]# ls /opt/
        etc.tar.gz  services

2、查看包里内容

        t  查看包里内容

        tar  tf  包名

        [root@qulan usr]# tar tf /tmp/local.tar.gz 

3、解包

        组合zxvf,缩写xf

        x  解压

        ① -C        指定路径解压

                [root@qulan tmp]# tar xf local.tar.gz -C /qulan/

        ② -p        保持属性(zcfp)

4、排除打包   --exclude=

        [root@qulan /]# tar zcvf /tmp/pai.tar.gz ./qulan/ --exclude=file1或file{1..3}
        ./qulan/
        ./qulan/file2
        ./qulan/file3
        ./qulan/file4
        ./qulan/file5

二、日期 时间命令        date

[root@qulan ~]# date -s "2024/3/26"        //修改日期

[root@qulan ~]# date -s "2024/3/25 23:45:12"        //修改日期和时间        (重启就没了)

clock -w         //写到bios永久生效

[root@qulan ~]# date +%Y-%m-%d\ %H:%M:%S
2024-03-25 08:49:07

打印特殊时间:

[root@qulan /]# date +%F
2030-05-02
[root@qulan /]# date +%Y
2030
[root@qulan /]# date +%m
05
[root@qulan /]# date +%d
02
[root@qulan /]# date +%Y-%m-%d\ %H:%M:%S                //需要加\,如果不加,会认为空格前十个命令,空格后也是个命令
2024-05-02 15:08:55
[root@qulan /]# date +%w        //周几
4

三、企业案例:查找加组合打包

$()和``反引号,里面都是放命令,可以作为路径,文件名的一部分。

echo $(date +%F)

[root@qulan ~]# tar zcf /tmp/etc_$(date +%F).tar.gz /etc
[root@qulan ~]# ls /tmp/
etc_2024-05-02.tar.gz 
 

[root@qulan ~]# echo `date +%F`
2024-03-25
[root@qulan ~]# echo $(date +%F)
2024-03-25

练习:

[root@qulan ~]# tar zcf /tmp/etc_$(date +%F).tar.gz /etc/
etc_2024-03-25.tar.gz

案例1:每天打包/etc/目录,到/backup目录备份,要求压缩包的名字按照每天的日期命名。

[root@qulan ~]# ls -ld /etc/
drwxr-xr-x. 80 root root 8192 3月  25 08:31 /etc/        检查待备份的目录/etc
[root@qulan ~]# mkdir -p /backup                                创建存储备份数据的目录
[root@qulan ~]# ls -ld /backup/
drwxr-xr-x. 2 root root 6 3月  25 09:07 /backup/
[root@qulan ~]# tar zcf /backup/bak_etc_$(date +%F).tar.gz /etc/        打包备份
tar: 从成员名中删除开头的“/”
[root@qulan ~]# ls /backup/
bak_etc_2024-03-25.tar.gz

案例2:查找/etc下,扩展名是.conf的所有文件,打包备份到.backup,文件名含有日期

(1)查找/etc下扩展名是.conf的所有文件:

        [root@qulan ~]# find /etc/ -name "*.conf"

(2)方法1:

        [root@qulan ~]# tar zcf /backup/conf_$(date +%F).tar.gz $(find /etc/ -name "*.conf")

(3)方法2:

[root@qulan backup]# find /etc/ -name "*.conf" | xargs tar zcf /backup/conf_bak1_$(date +%F).tar.gz        //xargs可以吧find语句放在后面
[root@qulan backup]# ls /backup/
conf_bak1_2024-05-02.tar.gz

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值