可能是全球最快捷的修改 hosts 文件方式

244 天前
 shujuliuer

使用快捷方式一键修改 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

10044 次点击
所在节点    Windows
84 条回复
PrinceofInj
244 天前
这个主要是第一次修改需要改文件权限。楼上这么多直接编辑的,想必第一次也得改一下文件权限才行吧。
wangtian2020
244 天前
powertoys
ZxykM
244 天前
只用 SwitchHosts
shujuliuer
244 天前
@zictos 会有编辑权限问题
shujuliuer
244 天前
@henix 关键的点就在这里,无须管理员权限的提示
body007
244 天前
zictos
244 天前
@shujuliuer #24 我今天真的遇到了编辑权限的问题,以前明明好好的,今天突然不能直接修改了,通过管理员权限运行 cmd 并通过 notepad.exe 打开 hosts 文件才能编辑。我一直用 administrator 账户登录的,以前能直接手动修改也能使用 python 自动修改。

不过权限问题解决了,用管理员权限运行 cmd ,然后执行下面两行命令之后就能随意编辑 hosts 文件了。
takeown /f C:\Windows\System32\drivers\etc\hosts
icacls C:\Windows\System32\drivers\etc\hosts /grant Administrators:F
peasant
244 天前
我选择本地跑 AdGuardHome
fox2081
244 天前
Power Toys 了解一哈
raymonguo
244 天前
code C:\Windows\System32\drivers\etc\hosts
leee41
244 天前
C:\Windows\System32\drivers\etc\hosts
我直接快速访问固定该文件
lscho
244 天前
这就是我为什么开发环境不用 windows 的原因。。。。
FarmerChillax
244 天前
不如考虑一下这个: https://github.com/oldj/SwitchHosts 还带了环境管理
minami
244 天前
@lscho 能发散到这个的也是神人了
LitterGopher
244 天前
直接給 HOST 文件創建一個軟鏈接到你常用的目錄或桌面唄.
LitterGopher
244 天前
@lscho #32 虽然我自己使用 Linux 开发, 但是就我所遇到的和过的公司和部门几乎也只有我是在纯 Linux 上开发,就算嵌入式不少也都是在 Windows 上开发, Linux 上调试, 即便在 Linux 上开发的也是在 Windows 装虚拟机进行开发, 而不是裸跑 Linux 进行开发.

你说 macOS? 那你一定不是做开发的.
lscho
244 天前
@minami


@LitterGopher

啊?我只是说了“我”,又没有代表别人。不知道你们应激什么。。。
LitterGopher
244 天前
@lscho #37 好像确实是我应激了, 抱歉, 抱歉.
qingshengwen
244 天前
@yidev #12 哈哈哈哈,我就是这么做的
dode
244 天前
使用 vscode 编辑器打开,保存时自动提升使用管理员权限强制保存

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1114164

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX