-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathab.sh
54 lines (52 loc) · 1.68 KB
/
ab.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#!/bin/bash
######################################################################
#
#实现ab多url并发的shell脚本
#
# sh ab.sh 并发请求数(-c) 最大秒数(-t) 请求的次数(-n)
#
######################################################################
rm -rf ab.log #清空日志
for i in $(cat url.txt)
do
if [ "$1" == "" ]
then
echo "并发请求数不能为空"
elif [[ "$2" == "" ]]
then
if [ "$3" == "" ]
then
echo "并发请求数 = $1,最大秒数未赋值,请求的次数未赋值"
ab -c $1 $i >> ab.log &
continue
else
echo "并发请求数 = $1,最大秒数未赋值,请求的次数 = $3 "
ab -t $2 -n $3 $i >> ab.log &
continue
fi
elif [[ "$3" == "" ]]
then
echo "并发请求数 = $1,最大秒数 = $2 ,请求的次数未赋值"
ab -c $1 -t $2 $i >> ab.log &
continue
else
echo "并发请求数 = $1,最大秒数 = $2 ,请求的次数 = $3 "
ab -c $1 -t $2 -n $3 $i >> ab.log &
continue
fi
done
#####################################################################
#
# for 循环读取url文件中的url内容,执行ab命令
#
# 接收的url是i变量(从URL中读取的每行url值)
#
# 将结果写入ab.log日志中,& shell中是并行
#
# 1 是 sh ab.sh x xx xxx第一个x的值表示并发请求数
#
# 2 是 sh ab.sh x xx xxx第二个xx的值表示测试所进行的最大秒数
#
# 3 是 sh ab.sh x xx xxx第三个xxx的值表示每次ab请求的次数
#
####################################################################