# winload **Repository Path**: vincent-zyu/winload ## Basic Information - **Project Name**: winload - **Description**: A Windows CLI tool for real-time network traffic and bandwidth monitoring, inspired by Linux's nload. - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-02-08 - **Last Updated**: 2026-04-03 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ![winload](https://socialify.git.ci/VincentZyu233/winload/image?custom_language=Rust&description=1&forks=1&issues=1&language=1&logo=https%3A%2F%2Favatars.githubusercontent.com%2Fu%2F250448479%3Fs%3D200%26v%3D4&name=1&owner=1&pulls=1&stargazers=1&theme=Auto) # Winload > 轻量级实时终端网络流量监控工具,灵感来自 Linux 的 nload。 > **[📖 English](readme.md)** > **[📖 简体中文(大陆)](readme.zh-cn.md)** > **[📖 繁體中文(台灣)](readme.zh-tw.md)** > **[📖 日本語](readme.jp.md)** > **[📖 한국어](readme.ko.md)** [![GitHub](https://img.shields.io/badge/GitHub-181717?style=for-the-badge&logo=github&logoColor=white)](https://github.com/VincentZyuApps/winload) [![Gitee](https://img.shields.io/badge/Gitee-C71D23?style=for-the-badge&logo=gitee&logoColor=white)](https://gitee.com/vincent-zyu/winload) [![Windows x64 | ARM64](https://img.shields.io/badge/Windows-x64_|_ARM64-0078D4?style=for-the-badge&logo=windows&logoColor=white)](https://github.com/VincentZyuApps/winload/releases) [![Linux x64 | ARM64](https://img.shields.io/badge/Linux-x64_|_ARM64-FCC624?style=for-the-badge&logo=linux&logoColor=black)](https://github.com/VincentZyuApps/winload/releases) [![macOS x64 | ARM64](https://img.shields.io/badge/macOS-x64_|_ARM64-000000?style=for-the-badge&logo=apple&logoColor=white)](https://github.com/VincentZyuApps/winload/releases) [![Android x64 | ARM64](https://img.shields.io/badge/Android-x64_|_ARM64-3DDC84?style=for-the-badge&logo=android&logoColor=white)](https://github.com/VincentZyuApps/winload/releases) [![PyPI](https://img.shields.io/badge/PyPI-3776AB?style=for-the-badge&logo=pypi&logoColor=white)](https://pypi.org/project/winload/) [![npm](https://img.shields.io/badge/npm-CB3837?style=for-the-badge&logo=npm&logoColor=white)](https://www.npmjs.com/package/@vincentzyuapps/winload) [![Crates.io](https://img.shields.io/badge/Crates.io-000000?style=for-the-badge&logo=rust&logoColor=white)](https://crates.io/crates/winload) [![Scoop](https://img.shields.io/badge/Scoop-7B4AE2?style=for-the-badge&logo=scoop&logoColor=white)](https://scoop.sh/#/apps?q=%22https%3A%2F%2Fgithub.com%2FVincentZyuApps%2Fscoop-bucket%22&o=false) [![AUR](https://img.shields.io/badge/AUR-1793D1?style=for-the-badge&logo=archlinux&logoColor=white)](https://aur.archlinux.org/packages/winload-rust-bin) [![APT](https://img.shields.io/badge/APT-E95420?style=for-the-badge&logo=debian&logoColor=white)](https://github.com/VincentZyuApps/winload/releases) [![RPM](https://img.shields.io/badge/RPM-CB1626?style=for-the-badge&logo=redhat&logoColor=white)](https://github.com/VincentZyuApps/winload/releases) > **[📖 构建文档](.github/workflows/build.zh-cn.md)** ## 🚀 简介 `Winload` 是一个直观的终端网络流量监控工具。最初为 Windows 打造,弥补 `nload` 在 Windows 上的空白,现已支持 Linux 和 macOS。 ## 🙏 致谢 Winload 的灵感来自 Roland Riegel 的经典 「[nload](https://github.com/rolandriegel/nload)」 项目,感谢原作者的创意与体验。 https://github.com/rolandriegel/nload ## ✨ 主要特性 - **双实现版本** - **Rust 版**: 快速、内存安全、单静态二进制文件,适合日常监控。 - **Python 版**: 易于修改和扩展,适合原型开发或集成。 - **跨平台**: Windows、Linux、macOS(x64 & ARM64)。 - **实时可视化**: 实时上行/下行流量图和吞吐量统计。 - **简洁界面**: 干净的 TUI,沿袭 nload 的人体工程学设计。 ## 📊 性能基准测试 > ⚡ Winload (Rust) 实现 **~10ms 启动速度** 和 **<5MB 二进制体积**,在效率上显著优于 Python 并与 C++ nload 相当。 ![Winload Benchmark](docs/benchmark/benchmark.svg) ## 🐍 Python 版本安装 > 💡 **实现说明**:仅 PyPI 和 GitHub/Gitee 源代码是 Python 版本。 > 仅 Cargo 提供 Rust 源码供本地编译。 > 所有其他包管理器(Scoop、AUR、npm、APT、RPM)及 GitHub Releases 均提供 **Rust 二进制文件**。 ### Python (pip) ```bash pip install winload # 推荐使用 uv: # https://docs.astral.sh/uv/getting-started/installation/ # https://gitee.com/wangnov/uv-custom/releases uv venv uv pip install winload uv run winload uv run python -c "import shutil; print(shutil.which('winload'))" ``` ## 📥 Rust 版本安装(推荐) ### npm (跨平台) ```bash npm install -g @vincentzyuapps/winload npm list -g @vincentzyuapps/winload # 在 Windows 上使用 win-nload 以避免与 System32\winload.exe 冲突 # 在 Linux/macOS 上,winload 和 win-nload 均可使用 # 或直接使用 npx npx @vincentzyuapps/winload ``` > ⚠️ 旧包名 `winload-rust-bin` 已弃用,请使用 `@vincentzyuapps/winload`。改用 scoped 包名是为了兼容 [GitHub Packages](https://github.com/features/packages) 规范。 > 包含 6 个预编译二进制文件:x86_64 & ARM64 版本,支持 Windows、Linux 和 macOS。 ### Cargo (源码编译) ```bash cargo install winload cargo install --list ``` ### Windows (Scoop) ```powershell scoop bucket add vincentzyu https://github.com/VincentZyuApps/scoop-bucket scoop install winload # 执行二进制文件 win-nload Get-Command win-nload # Powershell where win-nload # CMD ``` > 💡 推荐使用 [Windows Terminal](https://github.com/microsoft/terminal) 而非旧版 Windows Console,以获得正确的中文字符渲染和更好的 TUI 体验。 > ```powershell > scoop bucket add versions > scoop install windows-terminal-preview > wtp > ``` ### Arch Linux (AUR): ```bash paru -S winload-rust-bin which winload ``` ### Linux (一键安装脚本) > 支持 Debian/Ubuntu 及其下游 —— Linux Mint、Pop!_OS、Deepin、统信 UOS 等 (apt) > 支持 Fedora/RHEL 及其下游 —— Rocky Linux、AlmaLinux、CentOS Stream 等 (dnf) ```bash curl -fsSL https://raw.githubusercontent.com/VincentZyuApps/winload/main/docs/install_scripts/install.sh | bash which winload ``` > 📄 [查看安装脚本源码](https://github.com/VincentZyuApps/winload/blob/main/docs/install_scripts/install.sh) **🇨🇳 Gitee 镜像(大陆地区下载更快):** ```bash curl -fsSL https://gitee.com/vincent-zyu/winload/raw/main/docs/install_scripts/install_gitee.sh | bash which winload ``` > 📄 [查看 Gitee 安装脚本源码](https://gitee.com/vincent-zyu/winload/blob/main/docs/install_scripts/install_gitee.sh) > ⚠️ 以上安装脚本仅适用于使用 **apt 或 dnf** 包管理器的 **x86_64 / aarch64** 架构系统。其他平台请使用 **npm**(`npm install -g @vincentzyuapps/winload`)或 **Cargo**(`cargo install winload`)安装。
手动安装 **DEB (Debian/Ubuntu):** ```bash # 从 GitHub Releases 下载最新 .deb 包 sudo dpkg -i ./winload_*_amd64.deb # 或使用 apt(自动处理依赖) sudo apt install ./winload_*_amd64.deb which winload ``` **RPM (Fedora/RHEL):** ```bash sudo dnf install ./winload-*-1.x86_64.rpm which winload ``` **或者直接从 [GitHub Releases](https://github.com/VincentZyuApps/winload/releases) 下载二进制文件。**
## ⌨️ 用法 ```bash winload # 监控所有活跃网络接口 winload -t 200 # 设置刷新间隔为 200ms winload -d "Wi-Fi" # 启动时定位到 Wi-Fi 网卡 winload -e # 启用 emoji 装饰 🎉 winload --npcap # 捕获 127.0.0.1 回环流量 (Windows,需安装 Npcap) ``` ### 参数选项 | 参数 | 说明 | 默认值 | |------|------|--------| | `-t`, `--interval ` | 刷新间隔(毫秒) | `500` | | `-a`, `--average ` | 平均值计算窗口(秒) | `300` | | `-d`, `--device ` | 默认设备名(模糊匹配) | — | | `-e`, `--emoji` | 启用 emoji 装饰 🎉 | 关闭 | | `-U`, `--unicode` | 使用 Unicode 方块字符绘图(█▓░·) | 关闭 | | `-u`, `--unit ` | 显示单位:`bit` 或 `byte` | `bit` | | `-b`, `--bar-style