鸟哥的Linux私房菜基础学习篇(第三版)之第十三章:shell scripts

第十三章shell scripts

  1. 什么是 Shell Script
      1.1 干嘛学习 shell script
      1.2 第一支script的撰写与执行
      1.3 规范(说明,历史,特殊指令的绝对路径,变量先声明与设定,exit返回值)
  2.  简单的shell script练习
      2.1 简单范例(常用的模板)
      对谈式,等用户输入
    随日期变化,利用date,${date --date='1 days ago' +%Y%m%d}
         数值运算,只支持整型,var=$((运算内容))
      2.2 script执行方式差异(source,sh,script,./script)
          用source是在本主程序用运行,其他事开启一个子程序运行
  3. 善用判断式
      3.1 用test指令测试功能
           1 判断某个文件或目录存在与否,还有文件类型 test -e /ckt && echo "exit" || echo "Not exist"
           2 判断是否具有权限,test -r filename
           3 两个档案之间的比较 test file1 -nt file2
           4 两个整数之间的判断 test n1 -eq n2
           5 判断单个字符串是否为空,或者两个字符串是否相等
           6 多重条件判定,与或非: -a  -o !
      3.2 利用判断符号[],注意要很多空格:[ "$HOME" == "$SMAIL" ]
      3.3 shell script的默认变数($0,$1)
    $0: 文档名
            $1: 第一个参数
    $#: 参数个数
            $@: ="$1" "$2" "$3" "$..." "$n"
    $*: ="$1 $1 $3 $... $n" 
           shift: 造成参数变量号码偏移
  4.  条件判断式  
      4.1 if [条件判断式];then
          elif [条件判断式];then
          else
          fi
      4.2 case $变量名称 in
            "第一个变量内容")
             程序段
             ;;
             "第N个变量内容")
             程序段
             ;;
             程序段
             exit 1
             ;;
          esac
      4.3 利用function功能
          function fname(){
            程序段
          }
          同样有$0,$1,$2...
  5. 循环loop
      5.1 while do done,until do done
          while [condition]
          do
             程序段
          done
          util [condition]
          do
             程序段
          done
      5.2 for var in con1 con2 con3
          do
            程序段
          done
          
          for初始值;限制值;执行步阶)
          do
            程序段
          done
  6.  debug
      sh [-nvx] scripts.sh
    -n :不执行,就查询语法
    -v :先显示再执行
          -x : 还是显示,带+号
  7.  所涉及的命令
      $(seq 1 100)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值