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 ...
随机推荐
- python实现websocket
# websocket实现原理 ''' 1.服务端开启socket,监听ip和端口 2.客户端发送连接请求(带上ip和端口) 3.服务端允许连接 4.客户端生成一个随机字符串,和magic strin ...
- J.U.C并发框架源码阅读(十五)CopyOnWriteArrayList
基于版本jdk1.7.0_80 java.util.concurrent.CopyOnWriteArrayList 代码如下 /* * Copyright (c) 2003, 2011, Oracle ...
- 解决win10下微信开发者工具点击错位问题
在系统设置->显示->更改文本.应用等项目的大小选项中将百分比改为100%即可.
- Jmeter插件之PerfMon监控插件使用说明
PerfMon是Jmeter用来监控系统资源的一款插件,可以用来监控系统的cpu.内存.I/O等性能指标. 首先是Jmeter的插件安装,需要先下载JMeter Plugins Manager这个插件 ...
- 洛谷—— P1869 愚蠢的组合数
https://www.luogu.org/problemnew/show/1869 题目描述 最近老师教了狗狗怎么算组合数,狗狗又想到了一个问题... 狗狗定义C(N,K)表示从N个元素中不重复地选 ...
- ELK帮助文档
elasticsearch: API中文指南:https://es.xiaoleilu.com/010_Intro/15_API.html 官方文档:https://www.elastic.co/cn ...
- Bean的实例化--构造器
1,编写Bean对象 package com.songyan.ico; public class Bean1 { } 2,配置xml <?xml version="1.0" ...
- Java判断中文字符
package com.jsoft.test; import java.util.regex.Pattern; /** * 判断中文字符 * * @author jim * @date 2017-12 ...
- sqlserver 出现sql被锁时,查看加锁和被锁的sql
原文:sqlserver 出现sql被锁时,查看加锁和被锁的sql DECLARE @spid INT DECLARE @blk INT DECLARE @count INT DECLARE @ind ...
- iOS教程:如何使用Core Data – 预加载和引入数据
这是接着上一次<iOS教程:Core Data数据持久性存储基础教程>的后续教程,程序也会使用上一次制作完成的. 再上一个教程中,我们只做了一个数据模型,之后我们使用这个数据模型中的数据创 ...