8.27 Linux文件管理

回顾:
  系统原理:CPU IO 内存 进程线程 进程程序
  调用 -- system call API
  *GPL GNU*
  man ls --> GPLv3+ 宽松的GPL
  GNU Apache BSD
  基础命令:
  关机 重启
  cd pwd ls cat tac date clock cal hwclock basename dirname
  sed / [^/]\+ /@/
  命令帮助
  man help
  内置命令 外置命名 CPU的架构(ring0 ring3 (vt-x)) 内核空间 用户空间
    whereis whatis which w who whoami
  目录管理:
  FHS
  /etc/ /bin /sbin /boot /var /root/ /home /tmp /proc /sys /dev /lib /lib64 /mnt /media /opt
  /usr /usr/bin /usr/sbin /usr/etc/ /usr/local/...
  nginx .rpm prce prce-devel briger-util net-tools openssl openssl-devel
  /etc/init.d/... 【第三方程序,在这里灭有你的启动脚本文件】  
  /usr/local/nginx/sbin/nginx
  /usr/local/nginx/sbin/nginx -t
  pkill -9 nginx
  nginxd
  ngixnd start

==============================================================================

Linux的文件管理:
  创建 touch vim/vi echo从定向 cat
  touch 管理:atime mtime
  touch 文件名 //如果文件不存在创建文件
  touch -a -t [[CC]YY]MMDDhhmm[.ss]
  20 19 0 8 27 10 03 22
  -c

  删除 1、mv /tmp
    2、find | xargs rm
    3、rm

    rm 删除文件
    alias rm -i
    -i 显示提示
    -f 强制删除
    -r 删除目录
  扩展:默认情况下 rm -rf / 是不让删的 (在centos 5 以及以下版本是可以)
  centos7 和 6要删是需要加一个参数的;--preserve-root 可以删根

  rmdir 删除目录
  
  移动
  文件的传输都有两种行为: 一种是“推” 一种是“拉” 的方式;
  mv 移动文件,改名
  -t
  mv a b c d /e //将多个文件同时移动到一个目录中
  mv a b //修改名字a文件名称改为b
  覆盖的问题 -i
  cp
  cp a b
  cp /a b
  -t
  -a 可以复制目录以及目录里面文件的属性!!!
  install 复制文件创建目录
  -d 创建目录
  -t
  -指定所属组
  -o 指定所属主
  -m 指定复制文件的权限

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

4、查找
  locate
  yum install mlocate -y
  需要生成一个查找库的--不常用
  updatedb 我在这个查找库中查找对应文件
  find
  可以根据文件的任何一个属性,来查找文件
    1、inode 2、文件类型 3、文件权限 4、硬连接数 5、所属主 6、所属组 7、文件大小 8、修改时间 9、文件名(globbing)-regex
  -type f d s p c b l
  -perm 007
  -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 【默认单位是多少?】
  -mtime -ctime -atime + - 数字
  -name 通配符
  -regex 指定使用正则表达式

---------------------------------------

  -ok
  -exec
  | xargs

5、压缩和递归
  压缩 -- 1、只能对文件进行压缩;2、能让源文件变小
  gzip
  bzip2
  xz
  归档 -- 1、归档可以对目录进行操作 2、不会让目录变小
  tar
  -j bzip2 -J xz -z gzip
  -c -x
  -v
  -f filename 指定创建压缩文件的名字;
  【解压的时候:最好不要指定压缩文件】
  
6、编辑
  全屏编辑器:
  nano
  vi vim
  【分 sed 流编辑器、行编辑器;】
  vim:
  1、默认为命令模式----------- | i I a A o O 进入编辑模式
    |
  | ESC 进入末行模式
  2、命令模式下的常用技巧
    2.1 上下左右 h j k l
    2.2 dd ndd
    p np
    u(上一个操作) U(退回到进入文件时的初始状态)
    yy nyy
    p np
    gg 光标调至文件内容行首
    G 光标跳至文件内容行尾
    c = dd+i
    r 替换光标所在字符为指定字符
    v 进入可选模式,选出指定内容,然后进行相应的操作

  3、末行模式
  【末行模式下的很多操作和sed相同】
  .,$s/^#/ /g
  :$ 将光标移动到文件末尾 :1
  :w
  :w filename 将当前文件保存到新的文件中去
  :q
  :wq! //!代表强制
  【在命令模式下ZZ也可以保存并退出文件】
  查找
  / 向下操作 n 下一个 N 上一个
  ? 向上查找 n 上面一个 N 下面一个
  多个文件同时编辑的情况
  :next
  vim a b
  5dd
  :next!
  p
  :perv
  :first
  :last
  :q //退出当前文件
  :q! :qa //退出所有的文件
  比较查看文件
    1、垂直分屏
    vim -O a b
    切换光标:ctrl+w 松开 w
    再进行切屏:ctrl+w 松开 v
    2、水平分屏
    vim -o a b
    切换光标:ctrl+w 松开 w
    再进行切屏:ctrl+w 松开 s

    :qa! 全部退出
    :wq! 全部保存并退出

posted @ 2019-08-28 09:49  酒友az  阅读(115)  评论(0编辑  收藏  举报