许多在线服务允许你实时测试你的互联网连接速度。如果你需要定期从你的服务提供商那里收集互联网连接速度的指标进行监控,你可以使用Ookla的流行Speedtest控制台客户端。让我们看看如何使用Windows命令提示符或PowerShell脚本来测量互联网连接的速度。
Speedtest CLI的优势:
- Speedtest CLI为软件开发人员、系统管理员和计算机爱好者提供了一种原生的Linux-native Speedtest应用程序。
- 可以轻松测量互联网连接的性能指标,如下载、上传、延迟和丢包,而无需依赖于Web浏览器。
- 可以测试Linux桌面、远程服务器甚至像Raspberry Pi®这样的低功耗设备的互联网连接。
- 可以设置自动化脚本来收集连接性能数据,包括随时间的趋势。
- 可以将Speedtest集成到你的程序中,使用你选择的编程语言进行封装。
- 可以以CSV、JSONL或JSON格式查看测试结果
在Windows下使用
-
下载Speedtest工具:
- 从https://www.speedtest.net/apps/cli下载Windows的控制台speedtest.exe工具。
- 将其解压到本地目录。
注意仅支持64位操作系统
-
自动测试网络下载和上传速度:
-
运行以下命令以自动测试到最近的Speedtest服务位置的网络下载和上传速度:
.\speedtest.exe
-
该工具会返回下载和上传速度(以Mbps为单位),以及你的计算机到最近的Speedtest服务器的网络延迟。由于全球有许多SpeedTest位置,这将是您的互联网连接速度。
-
-
手动选择测试点:
-
你可以手动选择ISP、国家和城市来测试你的互联网连接速度。列出最近的测试点并复制ID:
.\speedtest.exe -L
-
针对目标服务器运行速度测试:
.\speedtest.exe -s 24447
-
-
结果格式化:
-
Speedtest命令可以以结构化格式(CSV、JSON、TSV)返回结果,这在你需要从结果中提取额外数据或将测试结果发送到监控系统时非常有用。
使用PowerShell脚本获取测试结果:
- 例如,你可以使用以下PowerShell脚本来获取互联网速度测试的结果:
$speedtestcmd = & "C:\ps\speedtest.exe" --accept-license -s 37149 -f json $speedtestresult=ConvertFrom-Json $speedtestcmd $result=[PSCustomObject]@{ Download = [math]::round($speedtestresult.download.bandwidth/1MB, 5)*8 Upload = [math]::round($speedtestresult.upload.bandwidth/1MB, 5)*8 } $result
-
在其他操作系统下安装
- Speedtest CLI同时也适用于macOS、Ubuntu/Debian、Fedora/CentOS/RedHat和FreeBSD。以下是一些安装选项:
-
macOS:
brew tap teamookla/speedtest brew update # Example how to remove conflicting or old versions using brew # brew uninstall speedtest --force # brew uninstall speedtest-cli --force brew install speedtest --force
-
Ubuntu/Debian:
## If migrating from prior bintray install instructions please first... # sudo rm /etc/apt/sources.list.d/speedtest.list # sudo apt-get update # sudo apt-get remove speedtest ## Other non-official binaries will conflict with Speedtest CLI # Example how to remove using apt-get # sudo apt-get remove speedtest-cli sudo apt-get install curl curl -s https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.deb.sh | sudo bash sudo apt-get install speedtest
-
Fedora/CentOS/RedHat:
- 适用于i386, x86_64, arm32, arm32hf, 和 arm64。
## If migrating from prior bintray install instructions please first... # sudo rm /etc/yum.repos.d/bintray-ookla-rhel.repo # sudo yum remove speedtest ## Other non-official binaries will conflict with Speedtest CLI # Example how to remove using yum # rpm -qa | grep speedtest | xargs -I {} sudo yum -y remove {} curl -s https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.rpm.sh | sudo bash sudo yum install speedtest
-
FreeBSD:
- 仅适用于x86_64。
sudo pkg update && sudo pkg install -g libidn2 ca_root_nss # Example how to remove conflicting or old versions using pkg # sudo pkg remove speedtest # freeBSD 12 install sudo pkg add "https://install.speedtest.net/app/cli/ookla-speedtest-1.2.0-freebsd12-x86_64.pkg" # freeBSD 13 install sudo pkg add "https://install.speedtest.net/app/cli/ookla-speedtest-1.2.0-freebsd13-x86_64.pkg"
-