用命令行工具 Speedtest-CLI 来测试你的上下行网速

Avishek Kumar 的头像

·

·

·

37,851 次阅读

我们经常需要到检查家里与办公室之间的网络是否连通,那么我们要怎么做呢?打开网站Speedtest.net然后开始测试。网站是通过加载浏览器中的JavaScript脚本然后选择最佳的服务器测速然后用Flash产生图形化的结果。

那么远程服务器呢?要知道大多数远程服务器是没有浏览器可以打开web页面的。用浏览器打开网页测速的瓶颈就在此,你不能按计划的对服务器进行定期的常规测试。这时需要到一个名为Speedtest-cli的软件来打破这个瓶颈,它能让你通过命令行来测试互联网连接的速度。

Speedtest-cli是什么

此程序是基于Python开发的脚本程序,利用了speedtest.net的服务来测量出上下行的宽带。Speedtest-cli能根据机房离测速服务器的物理距离来列出测速服务器,或者针对某一服务器进行测速,同时还能为你生成一个URL以便你分享你的测速结果。

要在Linux上安装最新版本的speedtest-cli,你必须安装2.4-3.4或者更高版本的Python。

在Linux上安装speedtest-cli

有两种方法可以安装speedtest-cli。第一种方法需要用到python-pip包管理器,第二种方法需要安装Python脚本,生成安装文件然后运行,这里我们分别介绍两种方法:

使用pythin-pip安装speedtest-cli

首先你需要安装python-pip包管理器,之后你就可以用pip命令来安装speedtest-cli

$ sudo apt-get install python-pip
$ sudo pip install speedtest-cli

如果要把speedtest-cli升级至最新版本,你需要输入以下命令

$ sudo pip install speedtest-cli --upgrade

通过Pyhton脚本来安装speedtest-cli

首先要用wget命令从github上下来Python脚本,然后解压提取下载的文件(master.zip)

$ wget https://github.com/sivel/speedtest-cli/archive/master.zip
$ unzip master.zip 

提取出文件后,进入提取出的目录speedtest-cli-master然后使脚本可以执行。

$ cd speedtest-cli-master/
$ chmod 755 speedtest_cli.py 

下一步,把可执行的脚本移动到/usr/bin文件夹,这样你就不用每次都输入完整的脚本路径了。

$ sudo mv speedtest_cli.py /usr/bin/

用speedtest-cli测试互联网连通速度

1. 要测试你的下载与上传速度,只需要运行speedtest-cli命令,不需要带参数。

$ speedtest_cli.py
Test Download Upload Speed in Linux

在Linux下测试上传下载速度

2. 测试上传下载的速度(以字节计算)

$ speedtest_cli.py --bytes
Test Internet Speed in Bytes

测试bytes的速度

3. 工具提供一个链接来下载由你的宽带测试结果生成的图片,你可以分享给你的家人朋友。

Share Internet Speed Results

分享测速结果

下面的图片就是你通过以上的命令行测速而生成的图片

Speed Test Results

测速结果

4.如果你仅仅需要Ping,上传,下载的结果,就运行以下命令:

$ speedtest_cli.py --simple
Test Ping Download Upload Speed

测试Ping,上传,下载的速度

5. 列出speedtest.net所有的服务器距离你的物理距离,单位是千米(km)

$ speedtest_cli.py --list
Check Speedtest.net Servers

列出Speedtest.net的服务器

6. 当获得一个非常长的服务器列表之后,怎么列出我想要的某个服务器?如果我要在speedtest.net服务器列表中找出位于Mumbai(印度)的服务器呢?

$ speedtest_cli.py --list | grep -i Mumbai
Check Nearest Server

列出最近的服务器

7. 对指定的服务器进行测速。我们使用上面例子5和例子6中获取的服务器ID:

$ speedtest_cli.py --server [server ID]
$ speedtest_cli.py --server [5060]              ## 这里使用服务器ID为5060作为例子
Test Connection Against Server

对指定的服务器进行测速

8. 输出speedtest-cli的版本信息和帮助文档

$ speedtest_cli.py --version
Check SpeedCli Version

输出版本号

$ speedtest_cli.py --help
SpeedCli Help

输出帮助文档

提醒:报告中的延迟并不是确切的结果,不应该过于依赖它;这个数值可以当作相对延迟,这对你选择某一测试服务器来说是可靠的。同时,CPU和内存的容量会影响结果的准确度。

结论

系统管理员和开发者应该必备这个简单的脚本工具,这个轻量级的工具功能齐全,真是太赞了。我不喜欢Speedtest.net的原因是它使用来flash,相反speedtest-cli刚好戳中了我的痛点。

speedtest_cli是一个第三方工具,也不能自动地记录下宽带速度。Speedtest.net拥有上百万的用户,你可以自己配制一个小型的测速服务器

上面就是所有内容,更多内容敬请关注我们。如果你有任何反馈记得在文章下方评论,如果你喜欢别忘了给我们点个赞,分享我们的文章。


via: http://www.tecmint.com/check-internet-speed-from-command-line-in-linux/

作者:Avishek Kumar 译者:NearTan 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

4 条回复

  1. 朩ダo○ 的头像
    朩ダo○

    speedtest-cli这个包好奇怪哇,使用pip安装时,本想安装在家目录里,没想到去掉sudo就没法按咯,结果使用sudo pip uninstall speedtest-cli
    命令进行卸载时,居然把我/usr/local文件树下的bin文件夹给删除掉咯,虽然这下面一般都是空的,很少使用,不过破坏了我的目录树,还是稍有不爽的

    来自镇江
  2. linux 的头像
    linux

    这是安装/卸载脚本的严重错误,我觉得你可以给它提补丁去,这样就成了contributer 了:》

    来自北京
  3. 朩ダo○ 的头像
    朩ダo○

    嗯嗯,我就发个issue

    来自镇江
  4. 来自福建福州的 Chrome 47.0|Windows 7 用户 的头像
    来自福建福州的 Chrome 47.0|Windows 7 用户

    很好用,写的很详细,谢谢!

    来自福州

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注