我有一个像这样的 txt 文件
PC1 192.168.0.2
PC2 192.168.0.3
PC3 192.168.0.4
我想根据该列表更改计算机的 IP 地址,这样它就会填充计算机名称和 IP 地址并处理它们,而无需手动更改值,而我在让它工作时遇到了问题“仍在学习 powershell”
$wmi = Get-WmiObject -ComputerName ??? win32_networkadapterconfiguration -filter "ipenabled = 'true'"
$wmi.SetGateways("192.168.0.1", 1)
$wmi.EnableStatic("?????", "255.255.255.0")
有什么帮助吗?
答案1
如果你的 txt 文件只是一个空格分隔的列表[computername] [ip-address]
,你可以使用Import-Csv
命令:
$Computers = Import-Csv -Path C:\file.txt -Delimiter " " -Header Name,IP
foreach($Computer in $Computers){
# Query $Computer.Name
# Assign $Computer.IP as the static address
}
答案2
Mathias 的回答完全符合所问问题。不过,实现此目标的更好、更易于维护的方法是使用具有预留的 DHCP 服务器。