shell性能測(cè)試腳本優(yōu)化的技巧
最初腳本
腳本名稱:authTest.sh(備注:這個(gè)開發(fā)給過來的測(cè)試腳本,我們作為測(cè)試要檢查一下)
#!/bin/bash for ((i=0;i<=1000;i++)) do sh /usr/local/yeqinfang/device-authentication/src/device/build/authTest.sh& done
運(yùn)行結(jié)果:
從上面看,運(yùn)行結(jié)果沒有任何提示,也不知道運(yùn)行到什么程度,相當(dāng)不友好,那我們來美化一下吧!等等!這是個(gè)死循環(huán),通過腳本運(yùn)行自己,所以會(huì)永遠(yuǎn)運(yùn)行下去。我的天,幸好發(fā)現(xiàn)得早?,F(xiàn)在 更換authTest.sh,原因是這個(gè)是要運(yùn)行eaidkAuth文件的,因此需要更改,否則,就會(huì)像血輪眼一樣,無限月讀。接著檢查一下eaidkAuth是否適合使用sh運(yùn)行:
file eaidkAuth
發(fā)現(xiàn)這不是一個(gè)shell腳本,如果是shell腳本,會(huì)有“shell script”字樣,因此需要去掉sh,并把eaidkAuth設(shè)置為可執(zhí)行文件,這里給予最高權(quán)限,方法如下:
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語法。至于這個(gè)&么,如果是啟動(dòng)服務(wù)的時(shí)候加上,指的是后臺(tái)運(yùn)行,但放在腳本這里,好像是并發(fā)執(zhí)行。所以這個(gè)需要驗(yàn)證一下,驗(yàn)證腳本更改如下:
#!/bin/bash for ((i=0;i<=10;i++)) do /usr/local/yeqinfang/device-authentication/src/device/build/eaidkAuth& sleep 1s done
如果是并發(fā),這個(gè)腳本大概10秒執(zhí)行一次,我們來執(zhí)行一下:
touch test.sh vim test.sh sh test.sh
運(yùn)行結(jié)果:
很遺憾,這是每秒執(zhí)行一次,所以不是并發(fā)。
總結(jié)
以上所述是小編給大家介紹的shell性能測(cè)試腳本優(yōu)化的技巧,希望對(duì)大家有所幫助,也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
shell 腳本之用ab每隔30分鐘并發(fā)一次休息10分鐘
這篇文章給大家分享如何使用shll解決用ab每隔30分鐘并發(fā)一次休息10分鐘,需要的朋友可以參考下2019-11-11Shell腳本處理浮點(diǎn)數(shù)的運(yùn)算和比較實(shí)例
這篇文章主要介紹了Shell腳本處理浮點(diǎn)數(shù)的運(yùn)算和比較實(shí)例,文中分別使用了bc或awk實(shí)現(xiàn),需要的朋友可以參考下2014-06-06linux shell常用循環(huán)與判斷語句(for,while,until,if)使用方法
這篇文章主要介紹了linux shell循環(huán),判斷介紹,以及實(shí)例使用方法,需要的朋友可以參考下2019-04-04Linux 下xargs命令詳解及xargs與管道的區(qū)別
在工作中經(jīng)常會(huì)接觸到xargs命令,特別是在別人寫的腳本里面也經(jīng)常會(huì)遇到,但是卻很容易與管道搞混淆,本篇會(huì)詳細(xì)講解到底什么是xargs命令,為什么要用xargs命令以及與管道的區(qū)別,本文通過實(shí)例給大家詳解,需要的的朋友參考下2017-04-04