在日常的开发和运维工作中,我们经常需要修改本地的 hosts 文件来实现一些特定的网络配置,比如将某个域名指向特定的 IP 地址。而使用 Node.js 结合 zx 工具可以让我们更轻松地编写和运行脚本来更新本地的 hosts 文件。
一、功能介绍
目标: 通过修改 Hosts 解决国内 Github 经常抽风访问不到的情况
- 获取 github 上的远程 hosts 文件内容,更新本地 hosts 文件
- 恢复系统原有 hosts 文件
- 刷新 DNS 缓存,使配置生效
二、准备工作
首先,确保你已经安装了 Node.js 和 npm。然后,通过 npm 安装 zx 工具:
| 1 |  | 
三、编写脚本
接下来,我们来编写一个简单的 Node.js 脚本,使用 zx 来更新本地的 hosts 文件。以下是一个示例脚本,可以根据实际需求进行修改:
- 更新 hosts 脚本 update-hosts.mjs
| 1 |  | 
- 恢复系统 hosts 脚本 reset-hosts.mjs
| 1 |  | 
- 配置文件 hosts.config.mjs
| 1 |  | 
四、运行脚本
运行脚本有两种方式:
- 把 update-hosts.mjs和reset-hosts.mjs脚本作为可执行文件,前提是全局安装了zx工具
- 使用 node 命令运行脚本,需要本地安装 axios、chalk、zx等依赖
方式一:可执行文件执行
赋予执行权限:
| 1 |  | 
然后在终端中运行该脚本:
| 1 |  | 
方式二:node 命令执行
| 1 |  | 
其中涉及 sudo 权限(MacOS),需要输入密码。
windows 系统下,需要管理员权限运行,或以管理员身份运行终端 cmd。
参考文档:
欢迎访问:天问博客
本文作者: Tiven
发布时间: 2024-03-26
最后更新: 2024-03-26
本文标题: 使用 nodejs + zx 编写脚本更新本地 hosts
本文链接: https://www.tiven.cn/p/f948037b/
版权声明: 本作品采用 CC BY-NC-SA 4.0 许可协议进行许可。转载请注明出处!
发布时间: 2024-03-26
最后更新: 2024-03-26
本文标题: 使用 nodejs + zx 编写脚本更新本地 hosts
本文链接: https://www.tiven.cn/p/f948037b/
版权声明: 本作品采用 CC BY-NC-SA 4.0 许可协议进行许可。转载请注明出处!


