Chinaunix首页 | 论坛 | 博客
  • 博客访问: 145233
  • 博文数量: 69
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 595
  • 用 户 组: 普通用户
  • 注册时间: 2016-07-16 00:00
个人简介

宁可逆流而上与众不同,也不顺风顺水随波逐流

文章分类

全部博文(69)

文章存档

2020年(1)

2018年(9)

2017年(43)

2016年(16)

我的朋友

分类: LINUX

2017-02-26 23:31:18

shell脚本组合各种Linux命令,正则表达式,管道命令,数据流重定向等语法规则来完成指定任务。
cat /etc/shells 此命令查看系统中可用的shell解释器
    简单的脚本格式:
        脚本声明(#!):告诉系统用何种shell来解释
        注释信息(#):  对此脚本的介绍等,可不写
        执行语句:        执行的具体命令
    执行脚本方式:
        ./script_name.sh(可能需增加执行权限)
        sh script_name.sh
        source script_name.sh
    接收参数的脚本:
        比如:./script_name.sh  var1 var2 var3
         那么: $0                      $1     $2    $3
         此外,$#(一共有多少参数),$*(所有位置变量的值),$?(判断上一条命令是否执行成功)
    测试语句格式:[ 条件表达式 ] 表达式两边有空格
    测试语句有:文件测试,逻辑测试,整数值比较,字符串比较
        文件测试:[操作符   文件或目录名]
            -d    测试是否为目录
            -e    测试文件或目录是否存在
            -f     判断是否为文件
            -r     测试当前用户是否有权限读取
            -w    测试当前用户是否有权限写入
            -x     测试当前用户是否有权限执行

        逻辑测试:[表达式1] 操作符 [表达式2]
            &&     与
            ||        或
            !       非

     整数值比较:[整数1 操作符 整数2]
          -eq         判断是否等于
         -ne          判断是否不等于
          -gt         判断是否大于
          -lt           判断是否小于
          -le           判断是否等于小于
          -ge          判断是否大于或等于

     字符串比较:[字符串1 操作符 字符串2]
          =          比较字符串内容是否相同
          !=         比较字符串内容是否不同
          -z           比较字符串内容是否为空


条件测试语句:
     if 条件测试操作
       then     命令序列
    elif  条件测试操作
        then     命令序列
     else         命令序列
     fi
######################
     for 变量名 in 取值列表
     do
        命令序列
     done
######################
    while 条件测试操作
    do
        命令序列
    done    
######################
case 变量名 in
模式1)
    命令序列1
    ;;
模式2)
     命令序列2
    ;;
.........
*)
     默认命令序列
esac
阅读(463) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~