https://github.com/sivel/speedtest-cli
[root@i ~]# wget https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py
[root@i ~]# python speedtest.py
[root@i ~]# pip install speedtest-cli
[root@i ~]# speedtest-cli
执行完成后会得到类似下面的输出
Retrieving speedtest.net configuration...
Testing from China Telecom (Group) (1.1.1.1)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by Henan CMCC 5G (Zhengzhou) [9.69 km]: 23.605 ms
Testing download speed................................................................................
Download: 212.83 Mbit/s
Testing upload speed................................................................................................
Upload: 90.96 Mbit/s
可以看到这台主机的下载速率在 200+,上传在 90+ Mbps,其它用法可以通过 -h
查看说明:
[root@i ~]# python speedtest.py -h
Usage: speedtest.py [options]
Command line interface for testing internet bandwidth using speedtest.net.
--------------------------------------------------------------------------
https://github.com/sivel/speedtest-cli
Options:
-h, --help show this help message and exit
--no-download Do not perform download test
--no-upload Do not perform upload test
--single Only use a single connection instead of multiple. This
simulates a typical file transfer.
--bytes Display values in bytes instead of bits. Does not
affect the image generated by --share, nor output from
--json or --csv
--share Generate and provide a URL to the speedtest.net share
results image, not displayed with --csv
--simple Suppress verbose output, only show basic information
--csv Suppress verbose output, only show basic information
in CSV format. Speeds listed in bit/s and not affected
by --bytes
--csv-delimiter=CSV_DELIMITER
Single character delimiter to use in CSV output.
Default ","
--csv-header Print CSV headers
--json Suppress verbose output, only show basic information
in JSON format. Speeds listed in bit/s and not
affected by --bytes
--list Display a list of speedtest.net servers sorted by
distance
--server=SERVER Specify a server ID to test against. Can be supplied
multiple times
--exclude=EXCLUDE Exclude a server from selection. Can be supplied
multiple times
--mini=MINI URL of the Speedtest Mini server
--source=SOURCE Source IP address to bind to
--timeout=TIMEOUT HTTP timeout in seconds. Default 10
--secure Use HTTPS instead of HTTP when communicating with
speedtest.net operated servers
--no-pre-allocate Do not pre allocate upload data. Pre allocation is
enabled by default to improve upload performance. To
support systems with insufficient memory, use this
option to avoid a MemoryError
--version Show the version number and exit