鸟哥的Linux基础

硬件设备

LINUX历史

主机规划与磁盘分配

man , info

文件权限与目录配置

  • SUID:  二进制程序的执行者可以获取root的权限
  • SGID:  目录或文件的执行者可以获取改程序群组的权限
  • SBIT:  目录下创建的文件或目录只有创建者有权限删除
  • r:
    • 文件:  可读
    • 目录: 可获取文件列表
  • w:
    • 文件: 可编辑 (不可删除)
    • 目录: 可创建/删除/修改文件与目录
  • x:
    • 文件: 可执行
    • 目录: 是否可以进入该目录

VIM

  • 见<VIM>相关随笔

正则表达式

  • 见<正则>相关随笔

BASH

  • 目录创建:mkdir
  • 目录展示:ls
  • 目录编辑:rm,mv,cp
  • 文件创建:touch
  • 文件展示:cat,cat,ln,less,more,head,tail, grep
  • 非纯文本:od
  • 文件属性:file
  • 磁盘目录属性:df, du
  • 链接:ln
  • 磁盘信息:lsblk, gdisk, fdisk
  • 磁盘挂载:mount, umount, mknod
  • 文件压缩:zip(zcat, zmore, zless, zgrep), gz, bz2, xz
  • 文件打包:tar
  • 系统备份:xfsdump, xfsrestore
  • 创建目录别名:alias, unalias
  • 历史命令:history, !(command), !!, !(number)
  • 文件处理:sort, wc, uniq, tr, col, join, paste, expand
  • 双向重导向:tee
  • 文件分块:split
  • 参数代替:xargs

SHELL Scripts

  • 变量 (set,env,locale)
    • 变量替换:#, ##, %, %%,/(old)/(new), //(old)/(new)
  • 表达式
    • test
    • 测试的标志              代表意义 
      1. 关于某个文件名的“文件类 型”判断,如 test -e filename 表示存在否
      -e 该“文件名”是否存在?(常用) -f 该“文件名”是否存在且为文件(file)?(常用) -d 该“文件名”是否存在且为目录(directory)?(常用) -b 该“文件名”是否存在且为一个 block device 设备? -c 该“文件名”是否存在且为一个 character device 设备? -S 该“文件名”是否存在且为一个 Socket 文件? -p 该“文件名”是否存在且为一个 FIFO (pipe)文件? -L 该“文件名”是否存在且为一个链接文件? 2. 关于文件的权限侦测,如 test -r filename 表示可读否(但root权限常有例外)
      -r 侦测该文件名是否存在且具有“可读”的权限? -w 侦测该文件名是否存在且具有“可写”的权限? -x 侦测该文件名是否存在且具有“可执行”的权限? -u 侦测该文件名是否存在且具有“SUID”的属性? -g 侦测该文件名是否存在且具有“SGID”的属性? -k 侦测该文件名是否存在且具有“Sticky bit”的属性? -s 侦测该文件名是否存在且为“非空白文件”? 3. 两个文件之间的比较,如: test file1 -nt file2
      -nt (newer than)判断 file1 是否比 file2 新 -ot (older than)判断 file1 是否比 file2 旧 -ef 判断 file1 与 file2 是否为同一文件,可用在判断 hard link 的判定上 4. 关于两个整数之间的判定,例如 test n1 -eq n2
      -eq 两数值相等 (equal) -ne 两数值不等 (not equal) -gt n1 大于 n2 (greater than) -lt n1 小于 n2 (less than) -ge n1 大于等于 n2 (greater than or equal) -le n1 小于等于 n2 (less than or equal) 5. 判定字串的数据
      test -z string 判定字串是否为0? 若 string 为空字串,则为true test -n string 判定字串是否非为0? 若 string 为空字串,则为false。[-n亦可省略] test str1 == str2 判定 str1 是否等于 str2,若相等,则为true test str1 != str2 判定 str1 是否不等于 str2,若相等,则false 6. 多重条件判定
      test -r file -a -x file 则 file 同时具有 r 与 x 权限时,才回传true test -r file -o -x file 则 file 具有 r 或 x 权限时,就可回传true test ! -x file 当 file 不具有 x 时,回传true
    • [ ]
  • 逻辑结构
    • 条件
      if [ 条件判断式 ]; then
        {}
      elif [ 条件判断式 ]; then
        {}
      else
        {}
      fi
    • 变量
      case $变量 in
        "状态1")
          {}
          ;;
        "状态2")
          {}
          ;;
        *)
          {}
          ;;
      esac
    • 函数
      function fname() {
      
      }
    • while
      while [ 条件判断式 ]
      do
          {}                                                
      done
    • until
      until [ 条件判断式 ]
      do
          {}                                                
      done
    • for
      for var in con1 con2 con3 ...
      do
          {}
      done
      for i in $(seq 1 100)
      do
          {}
      done
      for ((start; limit; step))
      do
          {}
      done

crontab

  • 时间格式
  • 使用完整路径
  • 日志

程序管理

  • top
  • kill
  • free
  • uname
  • uptime
  • netstat
  • dmseg
  • vmstat
  • lsof

systemd

包管理

相关链接

猜你喜欢

转载自www.cnblogs.com/swxs/p/9346104.html