day 16 操作系统文件属性/正则符号

find的使用
根据权限找出相应文件数据:find /oldboy -type f -perm 666
根据时间信息查找文件数据:find /oldboy -type f mtime +7
+7显示查找的是7天以前的数据信息
7显示查找的刚好是第7天的额数据信息  (很少用到)
-7显示查找7天以内的数据信息
find命令找东西做出来方法:
方法一:配合xagrs命令使用
find /oldboy -type f |xagrs rm
find /oldboy -type f |xagrs -n1 rm
方法二:配合反引号命令使用
rm -f `find /oldboy -type f`
方法三:配合find命令参数
find /oldboy -type f -delete
方法四:配合find命令参数 -exec
find /oldboy -type f -exec rm{} \;

文件属性--文件索引概念

inode
  概念:用于存储文件属性信息/存储文件指针信息   先把文件属性信息存储到inode中然后再存储到磁盘的相应位置
  一个文件使用一个inode
  诞生:创建文件系统(格式化)
  查看方法:df -i
block
   概念:用于存储文件数据信息
      一个文件可能有多个block  一个block的字节可以随意改变
 查看方法:df
 一个block默认4k  
 block调节小一些:存储小文件更加有力
 存储大文件,占用多个block 读一个block和写一个block都会消耗磁盘I/O
 企业:默认block大小
 block调节大一些:存储大文件更有力
 企业:视频网站,调整磁盘block更大

文件属性--硬链接数

硬链接
   概念:inode号码一致的数据成为互为硬链接    ,相当于数据多个门
 创建:ln(link) /oldboy/oldboy.txt /oldboy/oldboy_hard_link.txt
 查看硬链接数的方法 : ll -i
 特点:源文件删除,链接文件依然生效
            硬链接创建成功,不会占用新的inode和block
             硬链接对目录不能进行处理,不会创建硬链接目录
             默认目录硬链接数为2,默认文件硬链接数为 1
    作用:硬链接文件可以用于数据恢复,防止数据误删除(无法防止文件误修改)完整备份数据使用cp进行备份
根据硬链接文件inode号码恢复数据
  find /-type f inum 3213
软连接
   概念:文件和目录信息的快捷方式
   创建:ln -s(soft) /oldboy/oldboy.txt /oldboy/oldboy_soft_link.txt
  特点:源文件删除,链接文件依然失效
          软链接创建成功,不会占用新的block 只会占用新的inode
         软链接对目录可以进行处理,可以创建软链接目录
   作用:方便开发人员调取系统环境数据

系统正则符号概念

系统基础符号系列:
      #:表注释信息,
         表示登录用户信息(root用户登录 提示符#)
     $:表示登录用户信息(普通用户登录 提示符$) 
        表示调取变量信息   $oldboy
        表示调取列信息:awk '{print $1}' /oldboy/oldboy.txt表示调取每一行开头的信息 
     !:表示强制意思 q! wq!
         表示取反操作:find /oldboy -type f ! -path /oldboy/oldboy01*/
        用于调取历史命令,!历史命令信息
    |:将前面一个命令执行结果交给后面命令执行
     find /oldboy -type f |xargs rm
练习: 找出/oldboy下面所有.txt结尾的文件, 并进行压缩 将压缩文件保存到/oldboy目录中
   mkdir /oldboy 
   touch /oldboy/oldboy{01..10}.txt
   touch /oldboy/oldboy{01..10}.jpg
      方法一:find /oldboy -type f -name "*.txt"|xargs tar zcvf /oldboy/oldboy.tar.gz
      方法二:tar zcvf 、/oldboy/oldboy.tar.gz `find /oldboy -type f -name "*.txt"`
      方法三:find /oldboy -type f -name "*.txt" -exec tar zcvf /oldboy/oldboy.tar.gz {} +;
     方法四:tar -zvcf /oldboy/oldboy.tar.gz --exclude=*.jpg  /oldboy/
     方法五:ll /oldboy/|grep -o 'oldboy.*.txt$'|xargs tar zcvf /oldboy/oldboy.tar.gz
   ls /oldboy/*.txt|xargs tar zcvf /oldboy/oldboy.tar.gz
引号符号系列
      ``反引号:跟$()类似 将命令执行的结果交给外面命令执行
      ''单引号: 所见即所得
      ""双引号:会将部分符号信息做解析处理 
     没引号:和双引号功能类似 识别序列信息
路径符号系列
   ~  : 快速切换到用户家目录      cd ~/cd
   -  : 快速切换到上一次所在路径  cd -/cd $OLDPWD
   .  : 切换到当前所在路径        cd .
   .. : 切换到一级所在路径        cd .. / cd ../../
定向符号系列
>标准输出重定向
>>标准输出追加重定向
< 标准输入重定向
<<标准输入追加重定向
2>错误输出重定向
2>>错误输出追加重定向

错误和正确信息统一放在一个文件中的方法:
echo oldboy >>/oldboy/ok.log 2>&1
echo oldboy &>>/oldboy/ok.log

逻辑符号系列
 &&:表示前面一个命令执行成功在执行后面的命令
 ||:表示前面命令执行失败,再执行后面命令
 ;:表示多个命令同时执行

你可能感兴趣的:(day 16 操作系统文件属性/正则符号)