Linux终端:speedtest_cli检测你的实时带宽速度

你在家(或者办公室)的上传和下载速度如何?你能保证,你支付费用给ISP的同时得到了等价的回报?
要想测试我们因特网连接的速度,当下存在着一些因特网服务,比如说SpeedTest,这是一种可以通过Web浏览器和手机应用程序浏览的web服务。
现在,你可以很容易地检测你的网速,使用speedtest_cli同样很简单,它是一个使用speedtest.net来测试因特网带宽的命令行界面。通过这种方式,你也可以在没有浏览器或者图形化界面的服务器上做带宽测试。
安装
speedtest_cli是一个python脚本,所以它真的很容易安装和使用,你可以通过许多方式安装它:
1)pip / easy_install
打开一个终端,输入下面的命令:
- pip install speedtest_cli
或者
- easy_install speedtest_cli
2)Github
想要直接从github安装,你得这么做:
- pip install git+https://github.com/sivel/speedtest-cli.git
或者
- git clone https://github.com/sivel/speedtest-cli.git
- python speedtest-cli/setup.py install
3)作为Ubuntu/Debian或者Mint包
getdeb仓库给我们提供了安装包,按照下面的步骤,就可以轻松安装:
- 安装getdeb包
或者
- 手动配置仓库:
进入系统管理软件源,第三方软件选项,加上:
- deb http://archive.getdeb.net/ubuntu trusty-getdeb apps
增加仓库GPG钥匙,打开终端窗口,然后输入:
- wget -q -O- http://archive.getdeb.net/getdeb-archive.key | sudo apt-key add -
现在,你就可以使用下面的命令安装speedtest_cli包了:
- sudo apt-get update
- sudo apt-get install python-speedtest-cli
4)下载(和以前的方式一样)
最后一个选择,只需要下载python脚本,然后在你想运行的地方运行脚本:
- wget -O speedtest-cli https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py
- chmod +x speedtest-cli
或者
- curl -o speedtest-cli https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py
- chmod +x speedtest-cli
基本用法
你可以不带任何选项地运行speedtest_cli.py,然后你会在终端获得关于你带宽速度的报告,这就是我那糟糕的意大利Adsl输出:
- $ ./speedtest_cli.py (或者 [root@weifeng1463 ~]# speedtest-cli )
- Retrieving speedtest.net configuration...
- Retrieving speedtest.net server list...
- Testing from Telecom Italia (87.13.73.66)...
- Selecting best server based on latency...
- Hosted by LepidaSpA (Bologna) [12.20 km]: 104.347 ms
- Testing download speed........................................
- Download: 6.35 Mbits/s
- Testing upload speed...............................................
- Upload: 0.34 Mbits/s
这就是基本用法,这足以让你知道你因特网连接的好坏,但是可能你想要和朋友分享这条信息,那么,只需要-share选项就可以
- ./speedtest_cli.py --share
- Retrieving speedtest.net configuration...
- Retrieving speedtest.net server list...
- Testing from Telecom Italia (87.13.73.66)...
- Selecting best server based on latency...
- Hosted by LepidaSpA (Bologna) [12.20 km]: 93.778 ms
- Testing download speed........................................
- Download: 6.20 Mbits/s
- Testing upload speed...............................................
- Upload: 0.33 Mbits/s
- Share results: https://dn-linuxcn.qbox.me/data/attachment/album/201409/11/153414kpd6xpiqs278f4xd.png
这将会产生一个类似于下面的图像(但是我希望你图像里面的值更好):

另一个有趣的选项是-list,它会按照距离列出所有speedtest.net服务器,下面是我运行的结果:
- Retrieving speedtest.net configuration...
- Retrieving speedtest.net server list...
- 2872) LepidaSpA (Bologna, Italy) [12.20 km]
- 1561) MYNETWAY S.R.L. (Cesena, Italy) [80.97 km]
- 2710) ReteIVO by D.t.s. Srl (Florence, Italy) [90.90 km]
- 4826) Inteplanet Srl (Verona, Italy) [100.45 km]
- 3998) Wolnext srl (Verona, Italy) [100.45 km]
- 2957) Wifiweb s.r.l. (Altavilla Vicentina, Italy) [103.11 km]
- 3103) E4A s.r.l. (Vicenza, Italy) [107.17 km]
- 3804) Interplanet Srl (Vicenza, Italy) [107.17 km]
- 1014) NTRnet (Vicenza, Italy) [107.17 km]
- 3679) Hynet s r l (Vicenza, Italy) [107.17 km]
- 3745) Comeser Srl (Fidenza, Italy) [114.00 km]
- 5011) Welcomeitalia spa (Massarosa, Italy) [119.26 km]
- 2864) ReteIVO by D.t.s. Srl (Massa, Italy) [120.92 km]
- 2918) ReteIVO by D.t.s. Srl (Arezzo, Italy) [129.79 km]
- ...
既然我知道了围绕在我周围的服务器的ID,我可以使用-server选项选择一个特定的服务器,所以,要想选择位于佛罗伦萨(ID 2710)的服务器,我使用下面的命令:
- ./speedtest_cli.py --server 2710
- Retrieving speedtest.net configuration...
- Retrieving speedtest.net server list...
- Testing from Telecom Italia (87.13.73.66)...
- Hosted by ReteIVO by D.t.s. Srl (Florence) [90.90 km]: 106.505 ms
- Testing download speed........................................
- Download: 6.18 Mbits/s
- Testing upload speed..............................................
- Upload: 0.35 Mbits/s
文章由Asapy Programming Company发表
via: http://linuxaria.com/howto/linux-terminal-speedtest_cli-checks-your-real-bandwidth-speed
Linux终端:speedtest_cli检测你的实时带宽速度的更多相关文章
- Linux下Rsync+sersync实现数据实时同步
inotify 的同步备份机制有着缺点,于是看了sersync同步,弥补了rsync的缺点.以下转自:http://www.osyunwei.com/archives/7447.html 前言: 一. ...
- Linux下Rsync+Inotify-tools实现数据实时同步
Linux下Rsync+Inotify-tools实现数据实时同步 注意:下面的三个案例都是rsync 每次都是全量的同步(这就坑爹了),而且 file列表是循环形式触发rsync ,等于有10个文件 ...
- Linux后门入侵检测工具,附bash漏洞解决方法[转载]
转自:http://blog.jobbole.com/77663/ 官网 ClamAV杀毒软件介绍 ClamAV是一个在命令行下查毒软件,因为它不将杀毒作为主要功能,默认只能查出您计算机内的病毒,但是 ...
- Linux中系统检测工具top命令
Linux中系统检测工具top命令 本文转自:https://www.cnblogs.com/zhoug2020/p/6336453.html 首先介绍top中一些字段的含义: VIRT:virtua ...
- Linux后门入侵检测工具
一.rootkit简介 rootkit是Linux平台下最常见的一种木马后门工具,它主要通过替换系统文件来达到入侵和和隐蔽的目的,这种木马比普通木马后门更加危险和隐蔽,普通的检测工具和检查手段很难发现 ...
- Linux内核死锁检测机制【转】
转自:http://www.oenhan.com/kernel-deadlock-check 死锁就是多个进程(线程)因为等待别的进程已占有的自己所需要的资源而陷入阻塞的一种状态,死锁状态一旦形成,进 ...
- Linux终端那件事儿
我们将会讨论如何更好的控制用户终端:也就说是键盘输入与屏幕输出.除了这些,我们还会了解我们编写的程序如何由用户处读取输入,即使是在输入重定向的情况下,以及确保输出到屏幕的正确位置.这里所提供的一些底层 ...
- Linux后门入侵检测工具,附bash漏洞解决方法
一.rootkit简介 rootkit是Linux平台下最常见的一种木马后门工具,它主要通过替换系统文件来达到入侵和和隐蔽的目的,这种木马比普通木马后门更加危险和隐蔽,普通的检测工具和检查手段很难发现 ...
- Linux终端打印命令使用介绍
常用linux打印命令 日常使用中或shell脚本中linux终端打印命令有echo和printf. echo命令 功能说明:显示文字.语 法:echo [-ne][字符串]或 echo [--he ...
随机推荐
- Linux安转jdk
1. 创建目录 > mkdir /opt/java > cd /opt/java 2. 下载jdk压缩包到上述目录 jdk-8u162-linux-x64.tar.gz 3. 解压缩.建 ...
- 利用System.Net.Mail 发送邮件
我这里只是试了一下发mail的功能,感觉.net自带的发mail是比较全的,还是直接上我的code 参数文章:System.Net.Mail 发送邮件 SMTP协议 using System; usi ...
- 牛客小白月赛3 B 躲藏【动态规划/字符串出现cwbc子序列多少次】
链接:https://www.nowcoder.com/acm/contest/87/B来源:牛客网 XHRlyb和她的小伙伴Cwbc在玩捉迷藏游戏 Cwbc藏在多个不区分大小写的字符串中. 好奇的X ...
- Ansible 删除多个文件或目录
翻译和转载该网页内容 http://www.mydailytutorials.com/ansible-delete-multiple-files-directories-ansible/ 背景 ans ...
- Xamarin XAML语言教程使用使用Progress属性设置当前进度
Xamarin XAML语言教程使用使用Progress属性设置当前进度 开发者除了可以在XAML中使用Progress属性设置进度条的当前进度外,还可以在代码隐藏文件中使用Progress属性来设置 ...
- 你也许还不知道const_cast,static_cast,dynamic_cast,reinterpret_cast的区别吧?
[QQ群: 189191838,对算法和C++感兴趣可以进来] 开篇立意: C++中各种转换令人眼花缭乱,看似差不多,实际差很多,而且在当今时间,做一个"差不多先生"其 ...
- BZOJ 3864 Hero Meets Devil
题目大意 给定一个由AGCT组成的串\(t\), 求对于所有的\(L \in [1, |t|]\), 有多少个由AGCT组成的串\(s\)满足\(LCS(s, t) = L\). Solution 传 ...
- javascript与java的不同之处
javascript与java的不同之处 虽然很像,但不是一种语言. 二者的区别体现在: 首先,它们是两个公司开发的不同的两个产品,Java是SUN公司推出的新一代面向对象的程序设计语言,特别适合 ...
- Spark-class启动脚本解读
#!/usr/bin/env bash # # Licensed to the Apache Software Foundation (ASF) under one or more # contrib ...
- 在Spring MVC Controller中注入HttpServletRequest对象会不会造成线程安全的问题
做法: 1.比如我们在Controller的方法中,通常是直接将HttpServletRequest做为参数,而为了方便节省代码,通常会定义为全局变量,然后使用@Autowire注入. 说明: 1.观 ...