如何从主机文件中添加/删除行

ian*_*n5v 3 powershell hosts-file

我想定期添加和删除主机文件条目。我相信最简单的方法是 powershell 和任务调度程序。

那么如何添加/删除主机文件条目呢?

Ric*_*lay 5

不久前我写了一个模块,它提供了一堆用于管理主机文件的 Cmdlet。它还支持主机的选项卡完成,这很方便。

源是在GitHub上,它可以使用PsGet安装:

install-module PsHosts
Run Code Online (Sandbox Code Playgroud)

然后您可以使用动词使用它:

# Add a new entry
Add-HostEntry mysite.local 127.0.0.1

# Hit enter for all matching, hit tab to complete
Get-HostEntry mysite*

# Change existing
Set-HostEntry mysite.local 127.0.0.1

# Remove entry
Remove-HostEntry something.local

# Comments out an entry
Disable-HostEntry something.local
Run Code Online (Sandbox Code Playgroud)

而且因为它都是流水线的,所以非常灵活:

# Remove all disabled/commented *.local entries
Get-HostEntry *.local | ?{-not $_.Enabled} | Remove-HostEntry
Run Code Online (Sandbox Code Playgroud)

如果您在 IIS GUI 上花费的时间比 Powershell 多,几年前我还制作了一个 IIS 扩展(它们共享代码和单元测试),它具有一些额外的站点特定功能。它在 Codeplex 上可用