linux_ 文件管理以及文本管理基础

文件管理:
    file: 显示文件类型
    stat: 查看文件的详细状态
    touch: 创建空文件
       -a: 只改变访问时间
       -m: 只改变修改文件
       -t: 指定时间戳 [[CC]YY]MMDDhhmm[.ss]
       -c: 文件不存在时,不创建新文件

    使用文件编辑器创建文件
       nano
       vi
       vim

    删除文件:
    rm:
       -r: 递归删除
       -f: 不提示直接删除
       -i: 交互式删除,提示

    复制文件:(cp,install)
    cp: copy ,复制一个文件到一个文件,复制多个文件到一个目录
       cp source_file  destination_file
       -r: 递归复制,用于复制目录及目录下的文件
       -f: 强行复制,覆盖,不提示
       -i: 交互式
       -p: 保留源文件的权限,属主,时间戳
       -a: 归档,常用于备份
        -L: 如果源文件是链接文件,则复制链接的源文件
        -P: 复制的是链接文件,而不是链接的源文件
    

    mv: move  移动文件
       mv source_file destination_file

    install -d directory ... : 创建目录

    
    文件名的查找:
       whereis [-bmsu] filename
         -b: 只查找二进制文件
         -m: 只在说明文件路径 manual 查找
         -s: 只查找 source 源文件
         -u: 查找不在上述三个选项当中的其他特殊文件


    使用locate查找文件:
       非实时,模糊匹配,查找是根据全系统文件数据库进行的
         updatedb : 手动执行生成文件数据库
           locate因为使用数据库进行查找,速度较快
    
    
    使用find 查找文件:
        实时,精确,支持众多找找表准,遍历指定目录中的所有文件进行查找,速度慢
          find [PATH] [option] [action]
            查找路径: 默认为当前目录
          查找标准: 默认为指定路径下的所有文件
            处理动作: 默认为显示打印

            查找文件时可以使用组合条件进行查找:
              -a :  and  :find /tmp -name test.txt -a -type f
              -o :  or   :find /tmp -name test.txt -o -name test1.txt
              -not : 非  :find /tmp -not -name test.txt

        匹配标准:
          -name : find /path -name file_name :对文件名进行精确匹配
                                   支持文件通配符:
                                  *:
                                  ?:
                                  []:
           -iname file_name :匹配查找时忽略大小写
           -regexp pattern  :基于正则表达式进行文件名匹配

          -user : find /path -user username  :根据属主查找
          -group : 根据属组查找
          -uid UID :
          -gid GID :
                 -nouser : 查找没有属主的文件
              -nogroup :

          
          -type : find /path -type TYPE  :查找文件类型为 type 的文件
                f :普通文件
                d
                c
                b
                l
                p
                s
          

          -size : 根据文件的大小来查找,默认单位是字节"Byte"
             [+|-] 10[k|M|G]
                 + : 表示查找大于指定大小的文件
                 - : 表示查找小于指定大小的文件
                 不带符号表示等于指定大小的文件
        
                      
              -mtime :  修改时间
              -ctime :  改变时间
            -atime :  访问时间
                 find / -mtime 0 : 查找当前时间到24小时之内的文件
                                  +4: 查找大于等于5天前的文件
                                  -4: 查找小于等于4天内的文件
                                4 : 查找4~5天之间的文件
              -mmin  : 使用分钟为单位进行查找
              -cmin  :
              -amin  :
               
              -perm mode  : 查找等于mode的文件
              -perm /mode : 查找包含任一 mode 的文件
              -perm -mode : 查找包含指定mode的文件,大于mode
       

       使用find 查找文件可以同时对文件进行操作:
            默认操作为:print :显示
                -ls :类似ls -l的形式显示每一个文件的详细信息
            -ok COMMAND {} \; :   每一个操作需要用户确认,交互
            -exec COMMAND {} \; :  操作不需要用户确认
               -ok,-exec为关键字
               {} : 引用找到的文件




文本管理:
查看文本:
    cat:
       -n: 显示行号
       -E: 显示行尾符
    tac: cat逆序
          
    more: 向后翻
    less:
       /字符串  向下查询字符串
       ?字符串  向上查询字符串,less可用
       space 向下翻页
       b 向上翻页       

    head:
       head  -n 20 filename  查看文件头部20行
       head  -n -100 filename 不显示最后100行

    tail:
       tail  -n 20 filename  查看文件尾部20行
       tail  -n +100 filename 不显示头部100行
       
       -f: 查看文件尾部,不退出,等待显示后续追加至此文件的新内容


文本处理:
    cut:
       -d: 指定分隔符,默认为空格
       -f: 指定要显示的字段
         -f1,3 :显示第1,第2两个字段
     -f1-3 :显示第1至第3 三个字段
文本排序:
    sort:  默认asc排序
       -n: 按照数值排序
       -r: desc
       -t: 指定分隔符
       -k: 以哪个字段为排序标准
       -u: 去除重复项目,只显示一次
       -f: 忽略大小写
          [root@oracletest ~]# sort -t: -k3 -nr /etc/passwd

    uniq:
       -c: 显示文件中行重复的次数
       -d: 只显示重复的行

文本统计:
    wc: word count
       -l: 只显示行数
       -w: 只显示单词数
       -c: 只显示字节数
       -m: 只显示字符数
       -L: 最长的一行包含多少字符

字符处理:
    tr: 用于转换或删除字符
       tr [OPTION]... SET1 [SET2]
          [root@oracletest ~]# echo "aaaahsdf"|tr 'a-z' 'A-Z'
          AAAAHSDF
         

          -d: 删除字符
          [root@oracletest ~]# echo "aaaahsdf"|tr 'a' -d
          ----hsdf

 

文件链接:
  ln [option] source_file destination_file
       -b或--backup:删除,覆盖目标文件之前的备份;
       -d或-F或--directory:建立目录的硬连接;
       -f或--force:强行建立文件或目录的连接,不论文件或目录是否存在;
       -i或--interactive:覆盖既有文件之前先询问用户;
       -n或--no-dereference:把符号连接的目的目录视为一般文件;
       -s或--symbolic:对源文件建立符号连接,而非硬连接;

  硬链接:
    1.只能对文件创建,不能对目录创建硬链接
    2.不能跨文件系统(分区)
    3.创建硬链接会增加文件被链接的次数

  符号链接:
    1.可应用于目录
    2.可以跨文件系统
    3.不会增加被链接文件的链接次数
    4.其大小为指定的路径所包含的字符个数

posted @ 2016-01-08 17:52  Mr.hale  阅读(207)  评论(0编辑  收藏  举报