使用快捷方式一键修改 hosts 文件。
下面请看 VCR:

其实关键的命令只有一条:
powershell.exe -Command "Start-Process -FilePath notepad.exe -Verb RunAs -ArgumentList "$env:SystemRoot\system32\drivers\etc\hosts""
它使用记事本以管理员权限打开位于 C:\Windows\System32\drivers\etc\hosts 目录下的 hosts 文件,以便如果需要的话,可以编辑该文件。
Let's break it down:
powershell.exe: 这会调用 PowerShell 可执行文件,用于在命令行中执行 PowerShell 命令。

-Command: 该参数告诉 PowerShell 执行接下来的命令。

"Start-Process": 该 cmdlet 用于启动一个新进程(在这个例子中是一个应用程序,也就是记事本)。

-FilePath notepad.exe: 这指定了要启动的程序(记事本),notepad.exe 路径告诉 PowerShell 打开记事本。

-Verb RunAs: 这一部分指示 PowerShell 以提升的权限(管理员权限)运行该进程,这是修改系统文件(如 hosts 文件)所必需的。

-ArgumentList: 这指定了要传递给启动程序的参数(在本例中是记事本)。该参数是 hosts 文件的路径。
$env:SystemRoot\system32\drivers\etc\hosts: 这一部分通过 $env:SystemRoot 环境变量获取系统根目录(通常是 C:\Windows ),然后构建 hosts 文件的路径( C:\Windows\System32\drivers\etc\hosts )。

转义的双引号(\"):这些用于正确处理命令中的空格或特殊字符。此处用于围绕 $env:SystemRoot 变量,以正确地包含路径。

你也可以直接去下面网站下载已经生成的快捷方式。
windowsHost

牛批

看了这么一大堆文字,觉得,还是直接打开 host 文件修改比较快~~~~

在低频需求上瞎优化

我用 Power Toys 的 Hosts File Editor utility ,感觉也挺便捷的
learn.microsoft.com/en-us/windows/powertoys/hosts-file-editor

switchhosts.vercel.app/zh 我用软件

我用 SwitchHosts……

当有很多 host 需要管理的时候还是 SwitchHosts 比较方便,否则手动编辑其实也还好

冷知识: Win+R 打开运行,输入 drivers 回车,就能快速定位到 hosts 文件路径,双击就可以打开啦。

随便建立一个快捷方式就可以了啊,路径:
%windir%\system32\notepad.exe %windir%\system32\drivers\etc\hosts

Win+R 或 创建快捷方式
sudo notepad drivers\etc\hosts

我要是发送一个 hosts 快捷方式到桌面, 阁下又该如何应对?

sudo vim /etc/hosts

我的方法:

  1. 用 vscode 打开,保存的时候会提示要管理员权限,然后确认就行了
  2. 用 Power toy 里的 hosts 工具

    switchhosts

    我的 notapad++里常年吧 hosts 设置为第一个打开的文件

    这个确实方便。不过要 24h2

    有意思,但怎么没显示需要管理员权限的提示?

    +1

    没事
    经常
    手动
    用记事本
    改 hosts 玩

    这个主要是第一次修改需要改文件权限。楼上这么多直接编辑的,想必第一次也得改一下文件权限才行吧。

    powertoys