Update Nlbench.sh

This commit is contained in:
Jensfrank 2024-06-28 01:38:09 +08:00 committed by GitHub
parent 6363011082
commit e8d1a39851
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -178,15 +178,39 @@ response_process_output() {
# 去除三网测速板块板块ANSI转义码并截取多线程 # 去除三网测速板块板块ANSI转义码并截取多线程
speedtest_multi_process_output() { speedtest_multi_process_output() {
local input="$1" local input="$1"
# 使用更全面的 sed 命令去除所有 ANSI 转义码,并过滤掉包含 "测试进行中" 的行 # Step 1: 去除 ANSI 转义码
echo "$input" | sed -E 's/\x1b\[[0-9;]*[a-zA-Z]//g' | grep -v "测试进行中" | awk '/大陆三网+教育网 IPv4 多线程测速v/{f=1} f; /北京时间: /{f=0}' local no_ansi
no_ansi=$(echo "$input" | sed -E 's/\x1b\[[0-9;]*[a-zA-Z]//g')
echo "去除 ANSI 转义码后的输出: $no_ansi" >&2
# Step 2: 过滤掉包含 "测试进行中" 的行
local no_progress
no_progress=$(echo "$no_ansi" | grep -v "^ *测试进行中")
echo "过滤掉包含 '测试进行中' 的行后的输出: $no_progress" >&2
# Step 3: 截取所需的测试结果
local speedtest_multi_process_output_result
speedtest_multi_process_output_result=$(echo "$no_progress" | awk '/大陆三网+教育网 IPv4 多线程测速/{f=1} f; /北京时间/{f=0}')
echo "$speedtest_multi_process_output_result"
} }
# 去除三网测速板块板块ANSI转义码并截取单线程 # 去除三网测速板块板块ANSI转义码并截取单线程
speedtest_single_process_output() { speedtest_single_process_output() {
local input="$1" local input="$1"
# 使用更全面的 sed 命令去除所有 ANSI 转义码,并过滤掉包含 "测试进行中" 的行 # Step 1: 去除 ANSI 转义码
echo "$input" | sed -E 's/\x1b\[[0-9;]*[a-zA-Z]//g' | grep -v "测试进行中" | awk '/大陆三网+教育网 IPv4 单线程测速v/{f=1} f; /北京时间: /{f=0}' local no_ansi
no_ansi=$(echo "$input" | sed -E 's/\x1b\[[0-9;]*[a-zA-Z]//g')
echo "去除 ANSI 转义码后的输出: $no_ansi" >&2
# Step 2: 过滤掉包含 "测试进行中" 的行
local no_progress
no_progress=$(echo "$no_ansi" | grep -v "^ *测试进行中")
echo "过滤掉包含 '测试进行中' 的行后的输出: $no_progress" >&2
# Step 3: 截取所需的测试结果
local speedtest_single_process_output_result
speedtest_single_process_output_result=$(echo "$no_progress" | awk '/大陆三网+教育网 IPv4 多线程测速/{f=1} f; /北京时间/{f=0}')
echo "$speedtest_single_process_output_result"
} }
# 去除回程路由板块板块ANSI转义码并截取 # 去除回程路由板块板块ANSI转义码并截取