Linux的文件管理

linux的文件管理:
  1、创建 touch vim/vi echo重定向 cat重定向

    touch 管理:atime mtime
    touch 文件名 //如果文件不存在,创建文件
    touch -a -t

  2、删除:
    1、 mv /tmp
    2、find | xargs rm
    3、rm 删除文件
    -i 提示要不要删除
    -f 强制删除
    -r 删除目录
    -v 显示详细删除信息
    扩展:默认情况下 rm -rf / 是不让删除的(在centos 5及以下版本是可以的)
      centos 6和centos 7加参数可以 --preserve-root 可以删根

    4、rmdir 删除目录


  3、移动:
    文件的传输都有两种行为:一种是“推”,一种是“拉”的方式
    mv 移动文件,改名
      -t
      mv a b c d /e 将多个文件同时移动到一个目录中
      mv a b 把a文件名字修改为b
      覆盖的问题 -i

    cp 复制
      -t
      -a 可以复制目录以及目录里面文件的属性

    install 复制文件和创建目录
      -d 创建目录
      -t
      -g 指定所属组
      -o 指定所属主
      -m 指定复制文件的权限

    scp -- linux机器之间进行文件传输的命令;
      linux1 --> linux2
      linux1:scp 文件 root@linux2的ip:/目录
      linux2:scp root@linux1的ip:/文件 本地的那个目录


  4、查找
    locate
      yum install mlocate -y
      需要生成一个查找库的--不常用
      updatedb 我们在这个查找库中查找对应文件

    find 可以根据文件的任何一个属性来查找文件
      1、inode 2、文件类型 3、文件权限 4、硬链接数 5、所属主 6、所属组 7、文件大小 8、修改时间 9、文件名(globbing)
      -type f d s p c b l 指定文件类型
      -perm 指定权限
      -perm -500 004 411
      -perm /500 644 755
      -maxdepth 指定查找最多几级目录
      -mindepth 指定查找最少几级目录
      find ./ -maxdepth 1 -perm +1
      find ./ -maxdepth 2 -perm 755
      -links 指定硬链接数
      find ./ -maxdepth 1 -links 2
      -user -nouser
      -group -nogroup
      -size
      -mtine -ctime -atime + - 数字
      -name 支持文件通配符
      -regex 指定使用正则表达式


  5、压缩和递归
    压缩:--1、只能让文件进行压缩;2、能让源文件变小
      gzip
      bzip2
      xz
    归档:--1、归档可以对目录进行操作;2、不会让目录变小
      tar
        -j bzip2 -j xz -z gzip
        -c 压缩 -x 解压
        v 详细信息
        -f firename 指定创建压缩文件的名字
        【解压的时候最好不要指定压缩文件】


  6、编辑
    全屏编辑器:
      nano
      vi vim
    【区分:sed 流编辑器、行编辑器】

    vim
      1、默认为命令模式
        i I a A o O 进入编辑模式
        ESC 进入末行模式

      2、命令模式下的常用技巧
        2.1、上下左右 k j h l
        2.2、命令模式
          dd 删除一行 5dd删除5行
          P 粘贴
          u 切回上一个操作
          U 退回进入文件时的初始状态
          y 复制
          yy 复制光标当前所在行
          gg 光标跳至文件内容行首
          G 光标跳至文件内容行尾
          c =dd + i
          r 替换光标所在字符
          v 进入可选模式,进行选择,然后对选中的内容进行操作

      3、末行模式
        【末行模式下的很多操作和sed相同】
          .$s/^#/ /g
          :$将光标移动到文件末尾 :1 第一行
          :w 保存
          +filename 将当前文件保存到新的文件中去
          :q 退出
          :wq! 强制保存退出
        【在命令模式下ZZ也可以保存并退出文件】

        查找
        / 向下查找 n 下一个 N 上一个
        ? 向上查找 n 上面一个 N 下面一个

        多个文件同时编辑的情况
        :next 切换到下一个文件
        vim a b
        5dd
        :next
        p
        将a文件中的5行内容复制到b文件中
        :perv 切回到前一个文件
        :first 切换到第一个文件
        :last 切换到最后一个文件
        :qa 退出所有文件

        比较查看文件
        1、垂直分屏
          vim -O a b
          切换光标:Ctrl+w 松开再按w
          再进行切屏:ctrl+w松开按v
        2、水平切屏
          vim -o a b
          切换光标:Ctrl+w 松开再按w
          再进行切屏:ctrl+w松开按s
          :q! 全部退出
          :wq! 全部保存并退出

原文地址:https://www.cnblogs.com/4443056bdH/p/11420263.html