Linux网络命令:网络速度测试工具 speedtest-cli 详解

2024-06-20 06:20

本文主要是介绍Linux网络命令:网络速度测试工具 speedtest-cli 详解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

一、概述

二、安装 speedtest-cli

1、在基于 Debian 的系统上安装

2、在基于 Red Hat 的系统上安装

三、命令语法

1、基本命令语法

2、查看帮助

3、常用选项

四、 speedtest-cli使用示例

1. 基本测试        

2. 列出所有可用的服务器

3. 指定服务器进行测试

4. 分享测试结果

5. 其他选项

五、注意事项


一、概述

        speedtest-cli 是一个基于命令行的网络速度测试工具,它允许用户从命令行界面快速测试网络连接的上传和下载速度以及延迟。 speedtest-cli 功能非常强大,且易于使用,无论是基本测试还是高级选项,speedtest-cli 都提供了足够的灵活性和便捷性,以满足不同用户的需求。

二、安装 speedtest-cli

1、在基于 Debian 的系统上安装

        在大多数 Linux 发行版中,可以使用包管理器来安装 speedtest-cli。例如,在基于 Debian 的系统上(如 Ubuntu),可以使用以下命令来安装:

        sudo apt update

        sudo apt install speedtest-cli

2、在基于 Red Hat 的系统上安装

        在基于 Red Hat 的系统上(如 CentOS 或 Fedora),可以使用 yum 或 dnf(取决于系统版本)来安装:

        sudo yum install speedtest-cli  # CentOS 7 或更早版本

        sudo dnf install speedtest-cli  # CentOS 8 或 Fedora

        这里采用yum install speedtest-cli  命令,结果如下:

[root@ecs-52a1 121yunwei]# speedtest-cli
bash: speedtest-cli: command not found
[root@ecs-52a1 121yunwei]#
[root@ecs-52a1 121yunwei]#
[root@ecs-52a1 121yunwei]#
[root@ecs-52a1 121yunwei]# yum install speedtest-cli
Loaded plugins: fastestmirror
Determining fastest mirrors
base                                                                                                                                   | 3.6 kB  00:00:00
epel                                                                                                                                   | 4.3 kB  00:00:00
extras                                                                                                                                 | 2.9 kB  00:00:00
updates                                                                                                                                | 2.9 kB  00:00:00
(1/3): epel/x86_64/updateinfo                                                                                                          | 1.0 MB  00:00:00
(2/3): epel/x86_64/primary_db                                                                                                          | 8.7 MB  00:00:00
(3/3): updates/7/x86_64/primary_db                                                                                                     |  27 MB  00:00:00
Resolving Dependencies
--> Running transaction check
---> Package speedtest-cli.noarch 0:2.1.3-1.el7 will be installed
--> Finished Dependency ResolutionDependencies Resolved==============================================================================================================================================================Package                                   Arch                               Version                                  Repository                        Size
==============================================================================================================================================================
Installing:speedtest-cli                             noarch                             2.1.3-1.el7                              epel                              31 kTransaction Summary
==============================================================================================================================================================
Install  1 PackageTotal download size: 31 k
Installed size: 92 k
Is this ok [y/d/N]: y
Downloading packages:
speedtest-cli-2.1.3-1.el7.noarch.rpm                                                                                                   |  31 kB  00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transactionInstalling : speedtest-cli-2.1.3-1.el7.noarch                                                                                                           1/1Verifying  : speedtest-cli-2.1.3-1.el7.noarch                                                                                                           1/1Installed:speedtest-cli.noarch 0:2.1.3-1.el7Complete!
[root@ecs-52a1 121yunwei]# speedtest-cli  -v
usage: speedtest-cli [-h] [--no-download] [--no-upload] [--single] [--bytes][--share] [--simple] [--csv][--csv-delimiter CSV_DELIMITER] [--csv-header] [--json][--list] [--server SERVER] [--exclude EXCLUDE][--mini MINI] [--source SOURCE] [--timeout TIMEOUT][--secure] [--no-pre-allocate] [--version]
speedtest-cli: error: unrecognized arguments: -v
[root@ecs-52a1 121yunwei]# 

        由此可以看出,安装成功后,可以正常使用命令了。

三、命令语法

1、基本命令语法

        基本命令语法为:

        speedtest-cli [选项]

2、查看帮助

        使用 -h  --help 选项可以查看 speedtest-cli 的所有可用选项和说明。在centos系统中输入如下命令:

        speedtest-cli -h

        显示结果如下图所示:

3、常用选项

以下是使用 speedtest-cli 命令的一些常用选项:

  • /:默认情况下,这个命令会列出可用的服务器,并自动选择一个服务器进行测试。
  • --simple:这个选项会执行一个简单的测试,只测量带宽,不显示其他详细信息。
  • --no-download:这个选项会禁用下载测试,只进行上传测试。
  • --no-upload:这个选项会禁用上传测试,只进行下载测试。
  • --server <server-id>:允许选择特定的服务器进行测试,其中 <server-id> 是想测试的服务器的ID。
  • --max-duration <seconds>:设置测试的最大持续时间,单位是秒。
  • --latency:仅测试往返时间(ping),不进行带宽测试。
  • --json:输出结果以JSON格式显示,适合于自动化脚本处理。

四、 speedtest-cli使用示例

1. 基本测试        

        只需在终端中输入 speedtest-cli 并按回车,speedtest-cli 就会自动连接到最近的 Speedtest 服务器并测试的网络速度。测试结果将包括 ping(延迟)、下载速度和上传速度。

        speedtest-cli

2. 列出所有可用的服务器

        如果想知道哪些 Speedtest 服务器可供测试,可以使用 --list 或 -L 选项,这会列出所有可用的服务器,每个服务器都有一个唯一的 ID。

        在命令行输入如下命令:

                speedtest-cli –list

        结果如下:

[root@ecs-52a1 121yunwei]# speedtest-cli --list
Retrieving speedtest.net configuration...
60794) GuangZhou-5G (Guangzhou, China) [1295.53 km]
60584) ShenZhen-5G (ShenZhen, China) [1360.34 km]
13538) CSL (Hong Kong, Hong Kong) [1380.10 km]
32155) CMHK Mobile Service (Hong Kong, Hong Kong) [1385.49 km]
44745) Misaka Network, Inc. (Hong Kong, Hong Kong) [1393.19 km]
54757) CT-MACAU (Macau, Macau) [1398.18 km]
33794) CTM Mobile Services (Macau, Macau) [1398.33 km]
32319) TNIC (Tainan, Taiwan) [1453.33 km]8968) Homeplus (Kaohsiung, Taiwan) [1492.20 km]
55528) MobiFone (Hai Phong, Vietnam) [1694.59 km]
[root@ecs-52a1 121yunwei]#

3. 指定服务器进行测试

        如果希望测试特定服务器的速度,可以使用 --server 或 -s 选项,并指定服务器的 ID:

                speedtest-cli --server <服务器ID>

        将 <服务器ID> 替换为从 --list 命令中获取的服务器 ID。

4. 分享测试结果

        如果想将测试结果分享到 Speedtest.net,可以使用 --share 或 -S 选项:

                speedtest-cli --share

        这会将测试结果上传到 Speedtest.net 并生成一个分享链接。

5. 其他选项

        speedtest-cli 还提供了许多其他选项和参数,可以使用 --help 或 -h 选项查看所有可用的选项和参数:

        speedtest-cli --help

五、注意事项

        speedtest-cli 需要 Python 环境来运行。如果系统还没有安装 Python,需要先安装它。   

        speedtest-cli 默认会连接到最近的测速服务器进行测试。如果没有指定服务器,它会基于 IP 地址和测速服务器的距离来选择最佳服务器。

        测试结果可能会受到多种因素的影响,包括网络状况、测速服务器的负载等。因此,多次测试并取平均值可能更准确。


文章正下方可以看到我的联系方式:鼠标“点击” 下面的 “威迪斯特-就是video system 微信名片”字样,就会出现我的二维码,欢迎沟通探讨。


这篇关于Linux网络命令:网络速度测试工具 speedtest-cli 详解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1077337

相关文章

MySQL数据库双机热备的配置方法详解

《MySQL数据库双机热备的配置方法详解》在企业级应用中,数据库的高可用性和数据的安全性是至关重要的,MySQL作为最流行的开源关系型数据库管理系统之一,提供了多种方式来实现高可用性,其中双机热备(M... 目录1. 环境准备1.1 安装mysql1.2 配置MySQL1.2.1 主服务器配置1.2.2 从

Linux join命令的使用及说明

《Linuxjoin命令的使用及说明》`join`命令用于在Linux中按字段将两个文件进行连接,类似于SQL的JOIN,它需要两个文件按用于匹配的字段排序,并且第一个文件的换行符必须是LF,`jo... 目录一. 基本语法二. 数据准备三. 指定文件的连接key四.-a输出指定文件的所有行五.-o指定输出

Linux jq命令的使用解读

《Linuxjq命令的使用解读》jq是一个强大的命令行工具,用于处理JSON数据,它可以用来查看、过滤、修改、格式化JSON数据,通过使用各种选项和过滤器,可以实现复杂的JSON处理任务... 目录一. 简介二. 选项2.1.2.2-c2.3-r2.4-R三. 字段提取3.1 普通字段3.2 数组字段四.

Linux kill正在执行的后台任务 kill进程组使用详解

《Linuxkill正在执行的后台任务kill进程组使用详解》文章介绍了两个脚本的功能和区别,以及执行这些脚本时遇到的进程管理问题,通过查看进程树、使用`kill`命令和`lsof`命令,分析了子... 目录零. 用到的命令一. 待执行的脚本二. 执行含子进程的脚本,并kill2.1 进程查看2.2 遇到的

MyBatis常用XML语法详解

《MyBatis常用XML语法详解》文章介绍了MyBatis常用XML语法,包括结果映射、查询语句、插入语句、更新语句、删除语句、动态SQL标签以及ehcache.xml文件的使用,感兴趣的朋友跟随小... 目录1、定义结果映射2、查询语句3、插入语句4、更新语句5、删除语句6、动态 SQL 标签7、ehc

详解SpringBoot+Ehcache使用示例

《详解SpringBoot+Ehcache使用示例》本文介绍了SpringBoot中配置Ehcache、自定义get/set方式,并实际使用缓存的过程,文中通过示例代码介绍的非常详细,对大家的学习或者... 目录摘要概念内存与磁盘持久化存储:配置灵活性:编码示例引入依赖:配置ehcache.XML文件:配置

从基础到高级详解Go语言中错误处理的实践指南

《从基础到高级详解Go语言中错误处理的实践指南》Go语言采用了一种独特而明确的错误处理哲学,与其他主流编程语言形成鲜明对比,本文将为大家详细介绍Go语言中错误处理详细方法,希望对大家有所帮助... 目录1 Go 错误处理哲学与核心机制1.1 错误接口设计1.2 错误与异常的区别2 错误创建与检查2.1 基础

k8s按需创建PV和使用PVC详解

《k8s按需创建PV和使用PVC详解》Kubernetes中,PV和PVC用于管理持久存储,StorageClass实现动态PV分配,PVC声明存储需求并绑定PV,通过kubectl验证状态,注意回收... 目录1.按需创建 PV(使用 StorageClass)创建 StorageClass2.创建 PV

Python版本信息获取方法详解与实战

《Python版本信息获取方法详解与实战》在Python开发中,获取Python版本号是调试、兼容性检查和版本控制的重要基础操作,本文详细介绍了如何使用sys和platform模块获取Python的主... 目录1. python版本号获取基础2. 使用sys模块获取版本信息2.1 sys模块概述2.1.1

一文详解Python如何开发游戏

《一文详解Python如何开发游戏》Python是一种非常流行的编程语言,也可以用来开发游戏模组,:本文主要介绍Python如何开发游戏的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、python简介二、Python 开发 2D 游戏的优劣势优势缺点三、Python 开发 3D