Skip to content

Instantly share code, notes, and snippets.

@Betree
Created October 17, 2016 01:48
Show Gist options
  • Save Betree/2fa72e9c09180d36805f347ae89da00e to your computer and use it in GitHub Desktop.
Save Betree/2fa72e9c09180d36805f347ae89da00e to your computer and use it in GitHub Desktop.
Run internet speed tests on multiple countries using speedtest.net
Abkhazia
Abkhaziya
Afghanistan
Albania
Algeria
American Samoa
Andorra
Angola
Antigua and Barbuda
Argentina
Armenia
Aruba
Australia
Austria
Azerbaijan
Bahamas
Bahrain
Bangladesh
Barbados
Belarus
Belgium
Belguim
Belize
Benin
Bermuda
Bhutan
Bolivia
Bonaire
Bosnia and Herzegovina
Botswana
Brasil
Brazil
Brunei
Bulgaria
Burkina Faso
Burundi
Cabo Verde
Cambodia
Cameroon
Canada
Cape Verde
Cayman Islands
Chad
Chile
China
Colombia
Costa Rica
Croatia
Curacao
Cyprus
Czech Republic
Czech republic
DR Congo
Denmark
Dominica
Dominican Republic
Ecuador
Egypt
Ekaterinburg
El Salvador
Estonia
Ethiopia
FR
Faroe Islands
Federated States of Micronesia
Fiji
Finland
Finnland
France
Francef
Franec
French Guiana
French Polynesia
Gabon
Gambia
Georgia
Germany
Ghana
Gibraltar
Great Britain
Greece
Greenland
Guadeloupe
Guam
Guatemala
Guinea-Bissau
Guyana
Haiti
Honduras
Hungary
Iceland
India
Indonesia
Iran
Iraq
Ireland
Islamic Republic of
Isle of Man
Israel
Italia
Italy
Ivory Coast
Jamaica
Japan
Jersey
Jordan
Kazakhstan
Kenya
Kiribati
Kosovo
Kuwait
Kyrgyzstan
Lao PDR
Latvia
Lebanon
Lesotho
Liberia
Libya
Liechtenstein
Lithuania
Lithuanua
Luxembourg
Macau
Macedonia
Madagascar
Malawi
Malaysia
Mali
Malta
Marshall Islands
Martinique
Mauritania
Mauritius
Mexico
Moldova
Monaco
Mongolia
Montenegro
Morocco
Mozambique
Myanmar
Namibia
Nepal
Netherland
Netherlands
Netherlands Antilles
New Caledonia
New Zealand
Nicaragua
Nigeria
Northern Ireland
Northern Mariana
Norway
OOKLA LAB
OOKLA TEST
Oman
Pakistan
Palau
Palestine
Panama
Papua New Guinea
Paraguay
Peru
Philippines
Poland
Portugal
Puerto Rico
Qatar
Republic of Maldives
Republic of Moldova
Republic of Singapore
Reunion
Romania
Russia
Russian Federation
Rwanda
S Vincent & the Grenadines
Saint Kitts and Nevis
Samoa
Sao Tome and Principe
Saudi Arabia
Senegal
Serbia
Seychelles
Sierra Leone
Singapore
Sint Maarten
Slovakia
Slovenia
Solomon Islands
Somalia
South Africa
South Korea
South Sudan
Spain
Sri Lanka
Sudan
Suriname
Sweden
Switzerland
Syria
Taiwan
Tajikistan
Tanzania
Thailand
Timor-Leste
Togo
Trinidad
Trinidad and Tobago
Tunisia
Turkey
Turkmenistan
Turks & Caicos
USA
Uganda
Ukraine
United Arab Emirates
United Kingdom
United States
Uruguay
Uzbekistan
Vanuatu
Venezuela
Vietnam
Virgin Islands
Wales
Zambia
Zimbabwe
#!/bin/sh
#
# --------------------------------------------------------------------------------------------
# Script : speedtest-world.sh
#
# Author : Benjamin Piouffle
#
# Date : 2016-10-17
#
# Description : Uses speedtest-cli project to run internet speed tests on multiple
# countries using speedtest.net.
#
# speedtest-cli will automatically try to determine the best
# server for each country based on ping.
#
# You may edit the default countries list to test only the ones
# you're intrested in.
#
# Credits : Thanks to Matt Martz (https://github.com/sivel) for provinding the
# speedtest-cli project
#
# Install : As of today changes to focus tests on a specific country
# have not been merged to the official repository.
# (I'll update this doc when done)
#
# So please install it with :
# pip install https://github.com/Betree/speedtest-cli/tree/filter-country
#
# Usage : ./speedtest-world.sh COUNTRIES_LIST [--simple]
#
# --simple Suppress verbose output, only show basic information
#
# --------------------------------------------------------------------------------------------
OPT_SPEEDTEST_ARGS=""
if [ $# -lt 1 ]
then
echo "Usage: ./speedtest-world.sh COUNTRIES_LIST [--simple]"
exit
fi
if [ $# -eq 2 ] && [ $2 = "--simple" ]
then
OPT_SPEEDTEST_ARGS="--simple $OPT_SPEEDTEST_ARGS"
fi
# Read file given with first param, calling speedtest for each entry
while read COUNTRY
do
echo "------[$COUNTRY]------"
speedtest --country "$COUNTRY" $OPT_SPEEDTEST_ARGS
done < $1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment