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

相关文章

Spring创建Bean的八种主要方式详解

《Spring创建Bean的八种主要方式详解》Spring(尤其是SpringBoot)提供了多种方式来让容器创建和管理Bean,@Component、@Configuration+@Bean、@En... 目录引言一、Spring 创建 Bean 的 8 种主要方式1. @Component 及其衍生注解

Python异步编程之await与asyncio基本用法详解

《Python异步编程之await与asyncio基本用法详解》在Python中,await和asyncio是异步编程的核心工具,用于高效处理I/O密集型任务(如网络请求、文件读写、数据库操作等),接... 目录一、核心概念二、使用场景三、基本用法1. 定义协程2. 运行协程3. 并发执行多个任务四、关键

从基础到进阶详解Python条件判断的实用指南

《从基础到进阶详解Python条件判断的实用指南》本文将通过15个实战案例,带你大家掌握条件判断的核心技巧,并从基础语法到高级应用一网打尽,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录​引言:条件判断为何如此重要一、基础语法:三行代码构建决策系统二、多条件分支:elif的魔法三、

Java利用@SneakyThrows注解提升异常处理效率详解

《Java利用@SneakyThrows注解提升异常处理效率详解》这篇文章将深度剖析@SneakyThrows的原理,用法,适用场景以及隐藏的陷阱,看看它如何让Java异常处理效率飙升50%,感兴趣的... 目录前言一、检查型异常的“诅咒”:为什么Java开发者讨厌它1.1 检查型异常的痛点1.2 为什么说

Linux实现查看某一端口是否开放

《Linux实现查看某一端口是否开放》文章介绍了三种检查端口6379是否开放的方法:通过lsof查看进程占用,用netstat区分TCP/UDP监听状态,以及用telnet测试远程连接可达性... 目录1、使用lsof 命令来查看端口是否开放2、使用netstat 命令来查看端口是否开放3、使用telnet

MySQL的配置文件详解及实例代码

《MySQL的配置文件详解及实例代码》MySQL的配置文件是服务器运行的重要组成部分,用于设置服务器操作的各种参数,下面:本文主要介绍MySQL配置文件的相关资料,文中通过代码介绍的非常详细,需要... 目录前言一、配置文件结构1.[mysqld]2.[client]3.[mysql]4.[mysqldum

Linux系统管理与进程任务管理方式

《Linux系统管理与进程任务管理方式》本文系统讲解Linux管理核心技能,涵盖引导流程、服务控制(Systemd与GRUB2)、进程管理(前台/后台运行、工具使用)、计划任务(at/cron)及常用... 目录引言一、linux系统引导过程与服务控制1.1 系统引导的五个关键阶段1.2 GRUB2的进化优

springboot2.1.3 hystrix集成及hystrix-dashboard监控详解

《springboot2.1.3hystrix集成及hystrix-dashboard监控详解》Hystrix是Netflix开源的微服务容错工具,通过线程池隔离和熔断机制防止服务崩溃,支持降级、监... 目录Hystrix是Netflix开源技术www.chinasem.cn栈中的又一员猛将Hystrix熔

Java调用Python脚本实现HelloWorld的示例详解

《Java调用Python脚本实现HelloWorld的示例详解》作为程序员,我们经常会遇到需要在Java项目中调用Python脚本的场景,下面我们来看看如何从基础到进阶,一步步实现Java与Pyth... 目录一、环境准备二、基础调用:使用 Runtime.exec()2.1 实现步骤2.2 代码解析三、

python之uv使用详解

《python之uv使用详解》文章介绍uv在Ubuntu上用于Python项目管理,涵盖安装、初始化、依赖管理、运行调试及Docker应用,强调CI中使用--locked确保依赖一致性... 目录安装与更新standalonepip 安装创建php以及初始化项目依赖管理uv run直接在命令行运行pytho