curl统计接口返回状态码及耗时时长

#!/bin/bash  

start=$(date +%s) # 记录开始时间  

for ((i=1; i<=10000; i++))  

do  
    # 记录每次请求的开始时间  
    request_start=$(date +%s)  
      
    response=$(curl -s -o /dev/null --silent --head --write-out '%{time_total}\n' -w "%{http_code}" ) # 将替换为要检测的地址  
      
    # 记录每次请求的结束时间  
    request_end=$(date +%s)  
      
    # 计算每次请求的耗时时间(单位为秒)  
    duration=$(( request_end - request_start ))  
      
    echo "第$i次请求耗时为 $duration 秒"  
      
    if [ $response == "200" ]; then  
        echo "第$i次请求成功!"  
    else  
        echo "第$i次请求失败!返回状态码:$response"  
    fi  
done

你可能感兴趣的:(bash)