乐趣区

关于linux:linux基础3

  1. tar 打包命令

tar 命令经常用于打包、压缩某些文件或目录,也能够增加新文件到归档文件中。Tar 代表的是磁带存档,是一种归档的文件格式,晚期用于将文件归档到磁带备份存储。现能够用于收集、散发、归档文件,还能够保留文件原有的属性,如:用户和组权限,拜访和批改日期以及目录构造

    tar zcvf /backup/oldboy.tar.gz  /etc/ /oldboy/ /var/log/messages     
    tar: 从成员名中删除结尾的“/”--- 压缩数据信息,如果采纳绝对路径,在压缩时会将 / 目录信息移出
     解释:移出 / 根目录信息,次要是防止解压后数据会笼罩原有目录中数据信息(默认设置)查看压缩包数据信息:tar tf  /backup/oldboy.tar.gz


     tar zxvf  

 x  --- 提取压缩包中数据信息

 tar zxvf oldboy.tar.gz -C /data   --- 将解压后的数据保留到指定目录中(默认解压数据到当前目录)

补充:find 删除目录局部数据信息
形式一:将自身定位目录进行排除
find /oldboy/ -mindepth 1 ! -name “*.tar.gz”
/oldboy/hosts
/oldboy/services

find /oldboy/ ! -path /oldboy/ ! -name “*.tar.gz”
/oldboy/services
/oldboy/hosts

命令(脚本文件)参数信息 文件或目录(参数)— 脚本

find /oldboy/ -mindepth 1 ! -name “*.tar.gz”|xargs rm -rf
xargs — 放在管道符号前面,示意将管道符号后面命令产生的后果信息转换为参数信息,再交给 xargs 之后的命令进行解决

形式二:将局部数据进行删除
find /oldboy/ -mindepth 1 ! -name “*.tar.gz” -delete

形式三:将局部数据进行删除

find /oldboy/ -mindepth 1 ! -name “*.tar.gz” -exec rm -rf {} \;

压缩数据或者解压数据:为什么要移出 数据信息后面的 / 目录

第一个历程:环境筹备:
创立重要配置文件信息:
cat /conf/oldboy.conf
oldboy123

第二个历程:压缩保留备份数据信息

    tar zcvPf /backup/oldboy.tar.gz  /conf/oldboy.conf 

/conf/oldboy.conf

     tar tf /backup/oldboy.tar.gz 

tar: 从成员名中删除结尾的“/”
/conf/oldboy.conf — 查看数据没有移出 / 信息

第三个历程:批改编辑原有配置文件

    # cat /conf/oldboy.conf 

oldboy123 456 789

第四个历程:解压数据信息(不要移出根目录)
tar xPf /backup/oldboy.tar.gz

查看原有数据信息被笼罩
cat /conf/oldboy.conf
oldboy123

压缩数据排除性能:
tar zcvf /oldboy/oldboy.tar.gz /oldboy/ –exclude=/oldboy/oldboy02.txt –exclude=/oldboy/oldboy01.txt — 排除单个数据信息
tar zcvf /oldboy/oldboy.tar.gz /oldboy/ –exclude-from=/oldboy/paichu.txt — 排除多个数据信息

作业:

  1. 一个压缩包生成之后,如何向这个压缩包中追加新的压缩数据
  1. 如何实现批量压缩不同的数据信息
    将 /etc 目录中以 h 结尾的文件,进行压缩保留
    find /etc/ -maxdepth 1 -type f -name “h*”|xargs tar zcvf /backup/etc.tar.gz

2)文件权限信息:
r=4 w=2 x=1 -=0 权限符号对应数值信息
rw-r—wx 411

-wxr-xr--    367
r--rwx--x    542

论断:失常状况下,文件数据权限具备 9 位权限位 == 3 非凡权限位

3)文件用户信息:
· 用户信息概念介绍:
用户:能够治理相应数据用户 能够治理相应过程用户

     零碎辨认用户会依照用户编号辨认     == UID

用户组:能够多人同时治理某一个数据文件 能够同时设置调整多人的权限

     零碎辨认用户组会依照用户组编号辨认 == GID

硬盘 400 == 张三买的 属主

存储服务器  40000  == 张三 李四 王五 集资买的  势力 - 组       

· 零碎用户分类:
零碎超级管理员 root(皇帝)0 对系统具备相对控制能力
零碎虚构用户 nobody(傀儡)1-999 能够治理过程 / 数据信息???

                                          不能登陆零碎 / 不能具备家目录

零碎普通用户 oldboy(大臣)1000+ 辅助 root 用户管理系统 – 必须由 root 用户调配非凡权力

4)文件属性工夫信息

· 文件工夫类型:

Access time(atime): 拜访工夫 — 文件被查看关上的工夫

Modify time(mtime):批改工夫 -- 文件数据内容被扭转的工夫
Change time(ctime):扭转工夫 -- 文件属性信息变动的工夫        

刚创立一个文件后的工夫信息:
stat oldboy.txt
Access: 2020-11-20 12:04:49.984479241 +0800

Modify: 2020-11-20 12:04:49.984479241 +0800
Change: 2020-11-20 12:04:49.984479241 +0800

进行文件拜访查看:
[root@bj-oldboy-muban backup]# cat oldboy.txt

[root@bj-oldboy-muban backup]# stat oldboy.txt
Access: 2020-11-20 12:05:52.602486960 +0800    -- 拜访工夫变动
Modify: 2020-11-20 12:04:49.984479241 +0800
Change: 2020-11-20 12:04:49.984479241 +0800

批改文件内容信息:
[root@bj-oldboy-muban backup]# vi oldboy.txt
[root@bj-oldboy-muban backup]# stat oldboy.txt

Access: 2020-11-20 12:06:59.849495249 +0800    -- 编辑文件时关上拜访了文件
Modify: 2020-11-20 12:06:59.849495249 +0800    -- 信息扭转之后的工夫
Change: 2020-11-20 12:06:59.853495250 +0800    -- 文件大小属性变动

批改文件属性信息:
[root@bj-oldboy-muban backup]# stat oldboy.txt

Access: 2020-11-20 12:06:59.849495249 +0800
Modify: 2020-11-20 12:06:59.849495249 +0800
Change: 2020-11-20 12:10:46.299523165 +0800    -- 批改属性工夫会发生变化

和工夫无关命令:date
· 查看工夫信息

 依照需要查看显示工夫
 date "+%Y-%m-%d %A %H:%M:%S"
  2020-11-20 Friday 12:19:06
 
 [root@bj-oldboy-muban backup]# date "+%F"
  2020-11-20
  [root@bj-oldboy-muban backup]# date "+%T"
  12:21:06
 
 查看过来或将来的工夫:date -d "-1 day"      --- 显示过来的多少天前工夫
  date -d "+19345 day"  --- 显示将来的多少天后工夫

  11 月 01 日 00:00  备份数据 前一天(10 月 31 日)备份 - 生成  hosts-11 月 01 日 
 cp /etc/hosts /backup/hosts-$(date +%F -d "-1 day")      hosts-10 月 31 日 
 
 11 月 02 日 00:00  备份数据 前一天(11 月 01 日)备份 - 生成  hosts-11 月 02 日 
 cp /etc/hosts /backup/hosts-$(date +%F -d "-1 day")      hosts-11 月 01 日 

· 能够批改工夫:

 date -s "2020-12-12 12:12:12"  --- 残缺调整工夫信息
 
 

作业解说:
find 命令扩大:

  1. 如何依照分钟查找数据信息
    -mmin
    [root@bj-oldboy-muban oldboy]# find /oldboy -mmin -2
    /oldboy
    /oldboy/oldboy02.txt
    [root@bj-oldboy-muban oldboy]# find /oldboy -mmin +2
    /oldboy/oldboy01.txt
  2. 如何查找多个条件的数据 条件一 类型文件 条件二 大小是大于 10M 条件三 10 天前数据
    /oldboy/01 开始 — /oldboy/01/02/03/04/ 完结

    设置多个条件,是并且的关系
    find /oldboy -type d -a -name “oldboy*”
    设置多个条件,是或者的关系
    [root@bj-oldboy-muban oldboy]# find /oldboy -name “.jpg” -o -name “.sh”
    /oldboy/oldboy01/oldboy.jpg
    /oldboy/oldboy01/oldboy.sh
    /oldboy/oldboy02/oldgirl.jpg
    /oldboy/oldboy02/oldgirl.sh
    /oldboy/oldboy03/oldbaby.jpg
    /oldboy/oldboy03/oldbaby.sh

    find /oldboy -mindepth 2 -type f — 能够不必再看到 01.txt 文件
    find /oldboy -maxdepth 5 -type f — 能够不必再看到 06.txt 文件

    find /oldboy -mindepth 2 -maxdepth 5 -type f

    1. 如何排除指定目录不做查找
    /oldboy/01/oldboy.txt 
    /oldboy/02/oldboy.txt   依据名称查找 oldboy.txt  然而不要去 /oldboy/02/ 目录查找
    /oldboy/03/oldboy.txt   
    
     排除办法一:# find /oldboy ! -path "/oldboy/02/*" -type f 
     /oldboy/01/oldboy.txt
     /oldboy/03/oldboy.txt
    
    排除办法二:# find /oldboy -path "/oldboy/02" -prune -o -type f
     /oldboy/01/oldboy.txt
    
     /oldboy/03/oldboy.txt
    
     /oldboy/02/
退出移动版