• shell脚本为文本文件
  • 文件通常以.sh结尾
  • 第一行:指定用哪个程序编译执行
    • # ! /bin/bash
    • # ! /bin/sh
  • 注释:#
  • 变量名:以字母或下划线开头,大小写敏感
  • 变量
    • 本地变量
    • 环境变量(全局变量)
      • 大写
      • export LANG
    • 赋值
      • 等号两边不能有空格
      • 给变量赋空值,在等号后加换行符
    • 显示变量的值:echo$var 或 echo ${var}
    • 清除变量:unset var
    • 显示所有的变量:set
    • 位置参量:
      • 从命令行接受参数
      • 脚本后每个用空格隔开的变量都为字符参量
      • 参量中有空格需加引号
      • $x表示第x个参数
      • 当x大于9,要写成${x}
      • Linux——4.shell基础
  • 任何命令进行时都将返回一个退出状态
  • 查看命令:echo %?
  • shell脚本返回最后一个命令的返回码
  • 返回码:exit N
    • 0,成功
    • 0,出错

  • 数组
    • 定义:arr=(v1,v2,…)
    • 引用
      • 引用变量:${arr[0]}
      • 数组个数:${#arr[*]}
      • 所有元素:${arr[*]}
    • 赋值:arr[0]=hah
  • 时间
    • 显示
      • date +%Y/%m/%d
      • date +%H:%M
      • 今天:date +%Y/%m/%d
      • 昨天:date --date=‘1 days ago’ +%Y/%m/%d
      • 前天:date --date=‘2 days ago’ + +%Y/%m/%d
  • 判断
    • Linux——4.shell基础
    • Linux——4.shell基础
    • 判断是否为空:[var]
    • if [表达式]; then 语句 elif 语句 else 语句 fi
    • for var in 1 2 3 4 5 do 语句 done
    • for ((i=0;i<${num};i=i+1)) do 语句 done
    • while [condition] do 语句 done
    • until [condition] do 语句 done
  • 从文件或命令中逐行读取
    • cat file | while read line do echo $line done
    • car `ls ./*.txt` | while read line do echo $line done

相关文章: