前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >测试开发进阶(四十)

测试开发进阶(四十)

作者头像
zx钟
发布2019-12-05 23:44:41
3130
发布2019-12-05 23:44:41
举报
文章被收录于专栏:测试游记

运算

代码语言:javascript
复制
$ echo $((10 + 20))# 30$ one=25$ two=12$ echo $((one+two))# 37
代码语言:javascript
复制
$ echo $((one>two))# 1$ echo $((one<two))# 0

expr

代码语言:javascript
复制
$ echo $(expr $one+$two)# 25+12$ echo $(expr $one + $two)# 37

比较大小需要转义

代码语言:javascript
复制
$ echo $(expr $one \> $two)$ echo $(expr $one \< $two)

条件表达式

返回值

  • 条件成立,返回0
  • 条件不成立,返回1

逻辑表达式

  • &&
  • ||

文件表达式

  • -f判断输入内容是非为一个文件
  • -d判断输入内容是非为一个目录
  • -x判断输入内容是非可执行
  • -e判断文件是非存在

数值操作符

  • -eq相等
  • -gt大于
  • -lt小于
  • -ne不等于

字符串比较

  • ==
  • !=

进行判断

test[]效果一致

代码语言:javascript
复制
$ [ 1 = 2 ] && echo "条件不成立"$ [ 1 = 2 ] || echo "条件不成立"$ test 1 = 2 && echo "条件不成立"$ test 1 = 2 || echo "条件不成立"

查看使用方法

代码语言:javascript
复制
$ man [ ]$ man test

Shell脚本

格式要求

  • 在文件首行指定执行shell的程序
代码语言:javascript
复制
#!/bin/bash#Author:zhongxin
  • 后缀建议为 .sh
  • 执行失败时,使用 exit返回非零值,来退出程序
  • 默认锁进4个空格

执行脚本

代码语言:javascript
复制
# 第一种方式$ bash 1126.sh# 第二种方式$ chmod +x 1126.sh$ ./1126.sh# 第三种方式$ source 1126.sh

注释

  • 单行注释: #
  • 多行注释
代码语言:javascript
复制
#!/bin/bash#Author:zhongxin:<<!要注释的内容!pwd

函数

格式一
代码语言:javascript
复制
#!/bin/bash函数名(){    ...}
格式二
代码语言:javascript
复制
#!/bin/bashfunction 函数名{    ...}
代码语言:javascript
复制
#!/bin/bash#Author:zhongxin:<<!要注释的内容!hello(){    echo "Hello,Shell"}hellofunction greet{    echo "Hello,zx"}greet
入参
代码语言:javascript
复制
function greet{    echo "Hello,$1"    echo "Hello,$2"    echo "Hello,$3"}greet 'a' 'b' 'c'

接收命令行传参

代码语言:javascript
复制
greet $1 $2 $3
代码语言:javascript
复制
#!/bin/bash#Author:zhongxinread -p "请输入你的姓名:" nameread -p "请输入你的年龄:" ageread -p "请输入你的爱好:" function info{    # -e 运行\n换行    echo -e "你的姓名为:${name}\n你的年龄为:${age}\n你的爱好为:${REPLY}"}info

流程控制

if
代码语言:javascript
复制
if [ 条件1 ]then    指令1elif [ 条件2 ]then    指令2else    指令2fi

例子:

代码语言:javascript
复制
#!/bin/bash#Author:zhongxinread -p "输入你的年龄:"if [ ${REPLY} -ge 70 ]then    echo "好好养生"elif [ ${REPLY} -ge 18 ]then    echo "好好工作"else    echo "好好学习"fi
for
方式一
代码语言:javascript
复制
for 值 in 列表do    执行语句done

例子

代码语言:javascript
复制
dirs=$(ls /)for i in ${dirs}do    index=$((${index} + 1))    echo "${index}.${i}"done
方式二
代码语言:javascript
复制
max=10for ((i=1;i<=max;i++))do    执行语句done

例子

代码语言:javascript
复制
#!/bin/bash#Author:zhongxinmax=10for ((i=0;i<=max;i++))do    echo "i=${i}"done
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-11-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 测试游记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 运算
    • expr
    • 条件表达式
      • 返回值
        • 逻辑表达式
          • 文件表达式
            • 数值操作符
              • 字符串比较
                • 进行判断
                • Shell脚本
                  • 格式要求
                    • 执行脚本
                      • 注释
                        • 函数
                          • 格式一
                          • 格式二
                          • 入参
                        • 流程控制
                          • if
                          • for
                      领券
                      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档