项目
在 GitHub 查看

oldj/SwitchHosts
oldj/SwitchHosts has 27,368 GitHub stars and 2,687 forks. GitHot measured +2 stars in 24 hours. Last checked 2026-11-08 00:23 UTC. Last push 2026-11-03.
快速切换 hosts!
可以做什么
- Manage system, local, remote, group, and folder hosts entries
- Switch hosts quickly from the main window or system tray
- Syntax highlighting for hosts files
- Find and replace across hosts entries
实测星标增长
- 24小时
- +2
- 7天
- 更新延迟
- 15天
- 更新延迟
- 1个月
- 更新延迟
各周期内的星标净变化,周期相互重叠,并非每日新增。缺失的测量保持空白。星标代表关注度,不代表软件质量。
README.zh_hans.md
原文SwitchHosts
SwitchHosts 是一个管理 hosts 文件的应用,基于 Tauri、React、Jotai、Mantine 等技术开发。
截图

功能特性
- 管理系统、本地、远程、组合和文件夹 hosts 条目
- 可在主窗口或系统托盘快速切换 hosts 方案
- hosts 文件语法高亮
- 跨 hosts 条目查找和替换
- 支持手动、定时或启动时刷新远程 hosts
- 导入/导出 hosts 数据,并支持从 URL 导入备份
- 将条目移入回收站,并可稍后恢复或彻底删除
- 偏好设置支持写入模式、代理、更新检查、开机启动、应用后命令和本地 HTTP API
安装
下载
你可以下载源码并自行构建,也可以从以下地址下载已构建好的版本:
你也可以通过 Chocolatey 包管理器安装已构建好的版本:
choco install switchhosts
数据备份
SwitchHosts 的数据文件存储于 ~/.SwitchHosts (Windows 下存储于用户个人文件夹下的 .SwitchHosts 文件夹),
v5 数据结构如下:
~/.SwitchHosts/manifest.json存储 hosts 树~/.SwitchHosts/entries/存储本地和远程 hosts 内容~/.SwitchHosts/trashcan.json存储回收站条目~/.SwitchHosts/internal/config.json存储偏好设置~/.SwitchHosts/internal/histories/存储系统 hosts 和命令运行历史
如需完整手动备份,请复制整个 ~/.SwitchHosts 文件夹。应用内导出会生成 hosts 数据备份 JSON,不包含偏好设置或历史记录。
系统 hosts 使用无 BOM 的 UTF-8 写入。转换已有的 Windows ANSI 或带 BOM 的 UTF-16 文件前,SwitchHosts 会将原始字节保存到当前数据目录的 internal/histories/hosts-encoding-backups/,即使关闭历史记录也会备份。这些 .bin 备份不受历史条数限制影响,也不包含在应用内导出的 JSON 中。
开发以及构建
前置要求
- Node.js 24 LTS
- Rust >= 1.90
- Tauri 系统依赖,参见 Tauri 前置要求
开发
- 运行
npm install安装依赖 - 运行
npm run tauri:dev启动开发模式
构建及打包
- 运行
npm run tauri:build进行生产构建 - 打包后的文件位于
./src-tauri/target/release/bundle/
# 开发
npm run tauri:dev
# 生产构建
npm run tauri:build
版权
SwitchHosts 是一个免费开源软件,基于 Apache-2.0 协议发布。