PowerShell修改IP地址

本文介绍了一个使用PowerShell编写的脚本,该脚本能以交互方式更改计算机的网络设置,包括静态IP地址、子网掩码、默认网关及DNS服务器等。此脚本需在管理员权限下运行。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#region 强迫以管理员权限运行
$currentWi [Security.Principal.WindowsIdentity]::GetCurrent() 
$currentWp [Security.Principal.WindowsPrincipal]$currentWi
  
if-not $currentWp.IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) 
  $boundPara = ($MyInvocation.BoundParameters.Keys | foreach{
     '-{0} {1}' -f  $_ ,$MyInvocation.BoundParameters[$_]} ) -join ' '
  $currentFile = (Resolve-Path  $MyInvocation.InvocationName).Path 
  
 $fullPara $boundPara ' ' $args -join ' '
 Start-Process "$psHome\powershell.exe"   -ArgumentList "$currentFile $fullPara"   -verb runas 
 return
#endregion
$numA = 1
do{
    Echo "##################"
    Echo "#    1.IP1    #"
    Echo "#    2.IP2    #"
    Echo "#    3.IP3   #"
    Echo "#    4.退出  #"
    Echo "##################"
    Echo "`n"
    $SelectString Read-Host "请选择地点"
    Echo "`n"
    $wmi Get-WmiObject win32_networkadapterconfiguration -filter "ipenabled = 'true'"
    switch($SelectString){
        1 {            
            $wmi.EnableStatic("192.168.27.16""255.255.255.0") >$null
            $wmi.SetGateways("192.168.27.2",1) >$null
             $wmi.SetDNSServerSearchOrder("192.168.0.254") >$null
            }
        2 {
            $wmi.EnableStatic("10.0.0.16""255.0.0.0") >$null
            $wmi.SetGateways("10.0.0.2",1) >$null
            $wmi.SetDNSServerSearchOrder("10.0.0.254") >$null
           }
        3 {
            $wmi.EnableStatic("192.168.254.108""255.255.255.0") >$null
            $wmi.SetGateways("192.168.254.254",1) >$null
            $wmi.SetDNSServerSearchOrder("192.168.254.254") >$null
            }
        4 {
            Exit
            }        
        Default {"输入错误!请重新启动选择~"}
    }
    Echo "请核对修改后的IP地址是否正确~"
    $IPAddress $wmi.IPAddress
    $Subnet $wmi.IPSubnet
    $DefaultIPGateway $wmi.DefaultIPGateway
    $DNS $wmi.DNSServerSearchOrder
    Echo "  IP地址:$IPAddress" 
    Echo "子网地址:$Subnet"
    Echo "默认网关:$DefaultIPGateway"
    Echo "     DNS:$DNS"
    Echo "`n"
While($numA -eq 1)





本文转自 bannerpei 51CTO博客,原文链接:http://blog.51cto.com/281816327/1841304,如需转载请自行联系原作者
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值