0

I have a list of wget of file to download and want to see the download speed. I just want to run about 10 seconds, then print out the result what is the download speed. I have 20 different server file to test out. My goal is to see the how kb/s download for that 10 seconds.

e.g

> wget https://lg-lis.fdcservers.net/100MBtest.zip                                                          
--2021-05-08 13:37:37--  https://lg-lis.fdcservers.net/100MBtest.zip
Resolving lg-lis.fdcservers.net (lg-lis.fdcservers.net)... 50.7.43.4
Connecting to lg-lis.fdcservers.net (lg-lis.fdcservers.net)|50.7.43.4|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 104857600 (100M) [application/zip]
Saving to: ‘100MBtest.zip’

100MBtest.zip                      0%[                                                         ] 679.66K   174KB/s    eta 9m 26s ^C

This is my bash file

#!/bin/bash

function speedtest() {

    local key=$1
    local url=$2

    timeout 10 wget $url
    echo -e "\033[40;32;1m$key is completed.\033[0m"

 
}
speedtest "Lisbon" "https://lg-lis.fdcservers.net/100MBtest.zip"
speedtest "London" "https://lg-lon.fdcservers.net/100MBtest.zip"
speedtest "Madrid" "https://lg-mad.fdcservers.net/100MBtest.zip"
speedtest "Paris" "https://lg-par2.fdcservers.net/100MBtest.zip"

However, the above code does not work, it still download at background and redirect to wget-log

> ./wget_speedtest.sh                                                                                       


Redirecting output to ‘wget-log’.

Lisbon is completed.

Redirecting output to ‘wget-log.1’.
London is completed.

Redirecting output to ‘wget-log.2’.
Madrid is completed.

Redirecting output to ‘wget-log.3’.
Paris is completed.

Above output, I can't see the download speed.


My Expected Output, below is I run manually 4 commands for each time, I wish to automated it by running a single bash file, and also after run the wget delete the downloaded file. eg 100MBtest.zip

» timeout 10 wget "https://lg-lis.fdcservers.net/100MBtest.zip"                                             
--2021-05-08 16:03:07--  https://lg-lis.fdcservers.net/100MBtest.zip
Resolving lg-lis.fdcservers.net (lg-lis.fdcservers.net)... 50.7.43.4
Connecting to lg-lis.fdcservers.net (lg-lis.fdcservers.net)|50.7.43.4|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 104857600 (100M) [application/zip]
Saving to: ‘100MBtest.zip’

100MBtest.zip                      2%[>                                                        ]   2.65M   340KB/s    eta 4m 59s %

» timeout 10 wget "https://lg-lon.fdcservers.net/100MBtest.zip"                                             
--2021-05-08 16:03:21--  https://lg-lon.fdcservers.net/100MBtest.zip
Resolving lg-lon.fdcservers.net (lg-lon.fdcservers.net)... 50.7.152.4
Connecting to lg-lon.fdcservers.net (lg-lon.fdcservers.net)|50.7.152.4|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 104857600 (100M) [application/zip]
Saving to: ‘100MBtest.zip.1’

100MBtest.zip.1                    0%[                                                         ] 983.66K   105KB/s    eta 13m 54s%

» timeout 10 wget "https://lg-mad.fdcservers.net/100MBtest.zip"                                             
--2021-05-08 16:03:35--  https://lg-mad.fdcservers.net/100MBtest.zip
Resolving lg-mad.fdcservers.net (lg-mad.fdcservers.net)... 50.7.80.4
Connecting to lg-mad.fdcservers.net (lg-mad.fdcservers.net)|50.7.80.4|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 104857600 (100M) [application/zip]
Saving to: ‘100MBtest.zip.2’

100MBtest.zip.2                    1%[                                                         ]   1.10M   139KB/s    eta 12m 50s%

» timeout 10 wget "https://lg-par2.fdcservers.net/100MBtest.zip"                                            
--2021-05-08 16:03:50--  https://lg-par2.fdcservers.net/100MBtest.zip
Resolving lg-par2.fdcservers.net (lg-par2.fdcservers.net)... 50.7.33.4
Connecting to lg-par2.fdcservers.net (lg-par2.fdcservers.net)|50.7.33.4|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 104857600 (100M) [application/zip]
Saving to: ‘100MBtest.zip.3’

100MBtest.zip.3                    2%[>                                                        ]   2.63M   339KB/s    eta 5m 0s  %

I try to combine the command and run together, it run all 4 togethers, and only 1 output.

» timeout 10 wget "https://lg-lis.fdcservers.net/100MBtest.zip" &&                                          
timeout 10 wget "https://lg-lon.fdcservers.net/100MBtest.zip" &&
timeout 10 wget "https://lg-mad.fdcservers.net/100MBtest.zip" &&
timeout 10 wget "https://lg-par2.fdcservers.net/100MBtest.zip"

--2021-05-08 16:15:09--  https://lg-lis.fdcservers.net/100MBtest.zip
Resolving lg-lis.fdcservers.net (lg-lis.fdcservers.net)... 50.7.43.4
Connecting to lg-lis.fdcservers.net (lg-lis.fdcservers.net)|50.7.43.4|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 104857600 (100M) [application/zip]
Saving to: ‘100MBtest.zip.4’

100MBtest.zip.4                    0%[                                                         ] 951.66K   129KB/s    eta 14m 23s%
» 
Shiro
  • 7,344
  • 8
  • 46
  • 80

1 Answers1

1

Replace 10 with --foreground 10.


See: man timeout

Cyrus
  • 84,225
  • 14
  • 89
  • 153