gpt4 book ai didi

linux - wput 速度结果作为通过或失败

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:57:34 24 4
gpt4 key购买 nike

我正在使用以下内容输出上传速度测试的结果

wput 10MB.zip ftp://user:pass@host 2>&1 | grep '\([0-9.]\+[KM]/s\)'

返回

18:14:38 (10MB.zip) - '10.49M/s' [10485760]
Transfered 10,485,760 bytes in 1 file at 10.23M/s

我希望返回结果 10.23M/s(即速度),并比较结果:

if speed=>5 MB/s then echo "pass" else echo "fail"

因此,最终输出将是:

PASS 7 M/s 

2013 年 1 月 23 日

理想情况下,到目前为止,我希望这一切都在一条线上完成

wput 100M.bin ftp://test:test@0.0.0.0 2>&1 | grep -o '\([0-9.]\+[KM]/s\)$' | awk ' { if (($1 > 5) && ($2 == "M/s")) { printf("FAST %s\n ", $0); }}'

但是如果我删除它不会输出任何内容

&& ($2 == "M/s"))

它可以工作,但我显然希望它输出超过 5M/s,而且如果它超过 1K/s,它仍然会快速回显。谁能告诉我我错过了什么。

最佳答案

使用awk:

# Over 5M/s
$ cat pass
18:14:38 (10MB.zip) - '10.49M/s' [10485760]
Transfered 10,485,760 bytes in 1 file at 10.23M/s

$ awk 'END{f="FAIL "$NF;p="PASS "$NF;if($NF~/K\/s/){print f;exit};gsub(/M\/s/,"");print(int($NF)>5?p:f)}' pass
PASS 10.23M/s

# Under 5M/s
$ cat fail
18:14:38 (10MB.zip) - '3.49M/s' [10485760]
Transfered 10,485,760 bytes in 1 file at 3.23M/s

$ awk 'END{f="FAIL "$NF;p="PASS "$NF;if($NF~/K\/s/){print f;exit};gsub(/M\/s/,"");print(int($NF)>5?p:f)}' fail
FAIL 3.23M/s

# Also Handle K/s
$ cat slow
18:14:38 (10MB.zip) - '3.49M/s' [10485760]
Transfered 10,485,760 bytes in 1 file at 8.23K/s

$ awk 'END{f="FAIL "$NF;p="PASS "$NF;if($NF~/K\/s/){print f;exit};gsub(/M\/s/,"");print(int($NF)>5?p:f)}' slow

FAIL 8.23K/s

不确定从哪里得到 7 M/s

关于linux - wput 速度结果作为通过或失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14460687/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com