shell性能测试脚本优化的技巧

以梦为马不负韶华 2020-02-20

最初脚本

脚本名称:authTest.sh(备注:这个开发给过来的测试脚本,我们作为测试要检查一下)

#!/bin/bash
for ((i=0;i<=1000;i++))
do
 sh /usr/local/yeqinfang/device-authentication/src/device/build/authTest.sh&  
done

运行结果:

shell性能测试脚本优化的技巧

从上面看,运行结果没有任何提示,也不知道运行到什么程度,相当不友好,那我们来美化一下吧!等等!这是个死循环,通过脚本运行自己,所以会永远运行下去。我的天,幸好发现得早。现在 更换authTest.sh,原因是这个是要运行eaidkAuth文件的,因此需要更改,否则,就会像血轮眼一样,无限月读。接着检查一下eaidkAuth是否适合使用sh运行:

file eaidkAuth

shell性能测试脚本优化的技巧

发现这不是一个shell脚本,如果是shell脚本,会有“shell script”字样,因此需要去掉sh,并把eaidkAuth设置为可执行文件,这里给予最高权限,方法如下:

chmod 777 eaidkAuth

更改后的脚本如下:

#!/bin/bash
for ((i=0;i<=1000;i++))
do
 /usr/local/yeqinfang/device-authentication/src/device/build/eaidkAuth&  
done

脚本解析:

“#! /bin/bash” 代表的是该脚本使用bash语法。至于这个&么,如果是启动服务的时候加上,指的是后台运行,但放在脚本这里,好像是并发执行。所以这个需要验证一下,验证脚本更改如下:

#!/bin/bash
for ((i=0;i<=10;i++))
do
 /usr/local/yeqinfang/device-authentication/src/device/build/eaidkAuth&
 sleep 1s
done

如果是并发,这个脚本大概10秒执行一次,我们来执行一下:

touch test.sh
vim test.sh
sh test.sh

运行结果:

shell性能测试脚本优化的技巧

很遗憾,这是每秒执行一次,所以不是并发。

总结

相关推荐