3.1 条件表达式 表达式 示例 [ expression ] [ 1 -eq 1 ]  ` expression ` ` 1 -eq 1 ` test expression test 1 -eq 1 ,等同于[] 3.2 整数比较符 比较符 描述 示例 -eq,equal 等于 [ 1 -eq 1 ]为true -ne,not equal 不等于 [ 1 -ne 1 ]为false -gt,greater than 大于 [ 2 -gt 1 ]为true -lt,lesser than 小于…
流程控制是改变程序运行顺序的指令. 4.1 if语句 4.1.1 单分支 if 条件表达式; then 命令 fi 示例: #!/bin/bash N=10 if [ $N -gt 5 ]; then echo yes fi # bash test.sh yes 4.1.2 双分支 if 条件表达式; then 命令 else 命令 fi 示例1: #!/bin/bash N=10 if [ $N -lt 5 ]; then echo yes else echo no fi # bash tes…
1.1 简介 Shell是一个C语言编写的脚本语言,它是用户与Linux的桥梁,用户输入命令交给Shell处理,Shell将相应的操作传递给内核(Kernel),内核把处理的结果输出给用户. 下面是处理流程示意图: Shell既然是工作在Linux内核之上,那我们也有必要知道下Linux相关知识. Linux是一套免费试用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户.多任务.支持多线程和多CPU的操作系统. 1983年9月27日,Richard Stallman(理查德…
上一章节讲解了为什么用${}引用变量,${}还有一个重要的功能,就是文本处理,单行文本基本上可以满足你所有需求. 2.1 获取字符串长度 # VAR='hello world!' # echo $VAR hello world! # echo ${#VAR} 12 2.2 字符串切片 格式: ${parameter:offset} ${parameter:offset:length} 截取从offset个字符开始,向后length个字符. 截取hello字符串: # VAR='hello wor…
1.简介 前边三十多篇文章主要介绍的是Jmeter的一些操作和基础知识,算是一些初级入门的知识点,从这一篇开始我们就来学习Jmeter比较高级的操作和深入的知识点了.今天这一篇主要是讲参数化,其实前边或多或少的介绍过类似的知识点,知识没有系统的讲解,由于这个在实际工作中用到比较多而且经常用到,所以宏哥今天将其单独作为一个主题来系统的讲解. 尤其是在用到jmeter工具时,无论做接口测试还是性能测试,参数化都是一个必须掌握且非常有用的知识点.参数化的使用场景,例如: 1)多个请求都是同一个ip地址…
1.简介 上一篇中介绍了如果想要同时发送多条请求,那么怎样才能让每条数据某些请求参数改变呢.这就用到了jMeter参数化.在实际测试场景中,我们往往还有这样的需求,登录后服务器响应的token作为下次请求的参数,这就是所谓的参数关联. 当请求之间有依赖关系,比如一个请求的入参是另一个请求返回的数据,这时候就需要用到关联处理,Jmeter可以通过"后置处理器"中的"正则表达式提取器"来处理关联. 关联是Jmeter工具中非常重要的一个技术.因为在测试过程过有些数据是经…
熟悉基本shell操作不仅是运维的基本功,对于开发来说也是多多益善,我在学习的过程中,总结了十个练手的小demo,并附上涉及的知识点,仅供娱乐. 1. 多线程ping监控,检查同一网段的IP是否连通 Linux 系统中有一个特殊的设备/dev/null,这是一个黑洞.无论往该文件中写入多少数据,都会被系统吞噬.丢弃.如果有些输出信息是我们不再需要的, 则可以使用重定向将输出信息导入该设备文件中.注意:数据一旦导入黑洞将无法找回. 重定向: > 是覆盖重定向, >> 是累加重定向 $0 这…
1.简介 前边一篇文章介绍了如何生成测试报告,细心地小伙伴或者同学们可以看到宏哥启动Jmeter生成测试报告不是在gui页面操作的,而是在gui页面设置好保存以后,用命令行来生成测试报告的.这一篇宏哥就详细的介绍一下为什么用命令行而不是GUI,以及启动时的一些参数的含义. 2.为什么要命令行执行脚本? 本文介绍如何从命令行运行JMeter,那么宏哥先来说说,为什么要命令行执行脚本,日常测试过程中发现,在大数量并发时,jmeterGUI界面时长宕机.卡死,在这种情况下我们就需要使用命令行来执行脚本…
前言 在直播应用的开发过程中,如果把主播端消息事件传递到观众端,一般会以Instant Messaging(即时通讯)的方式传递过去,但因为消息分发通道和直播通道是分开的,因此消息与直播音视频数据的同步性就会出现很多问题.那么有没有在音视频内部传递消息的方法呢?答案是SEI.   金山云目前推出的直播问答解决方案中,就用到了SEI,阿曾作为一名视频云架构资深开发工程师,对于与视频相关的技术有着深刻的实践经验,今天给大家分享一下关于SEI的技术细节. 流媒体是采用流式传输方式在网络上播放的媒体格式…
1.简介 在性能测试中,有时需要模拟一种实际生产中经常出现的情况,即:从某个值开始不断增加压力,直至达到某个值,然后持续运行一段时间,然后继续加压达到某个值持续运行,如此循环直到达到预期的峰值,运行一段时间. 在jmeter中,有这样一个插件,可以帮我们实现这个功能,这个插件就是:Stepping Thread Group ,也就是常说的步长插件. 2.测试准备 Stepping Thread Group是jmeter插件的一种,其作用就是模拟实际的生产情况,不断对服务器施加压力,直至到某个值,…