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
<code>#region 强迫以管理员权限运行</code>
<code>$currentWi</code> <code>= </code><code>[Security.Principal.WindowsIdentity]</code><code>::GetCurrent() </code>
<code>$currentWp</code> <code>= </code><code>[Security.Principal.WindowsPrincipal]</code><code>$currentWi</code>
<code> </code>
<code>if</code><code>( </code><code>-not</code> <code>$currentWp</code><code>.IsInRole(</code><code>[Security.Principal.WindowsBuiltInRole]</code><code>::Administrator)) </code>
<code>{ </code>
<code> </code><code>$boundPara</code> <code>= (</code><code>$MyInvocation</code><code>.BoundParameters.Keys | </code><code>foreach</code><code>{</code>
<code> </code><code>'-{0} {1}'</code> <code>-f</code> <code>$_</code> <code>,</code><code>$MyInvocation</code><code>.BoundParameters[</code><code>$_</code><code>]} ) -join </code><code>' '</code>
<code> </code><code>$currentFile</code> <code>= (</code><code>Resolve-Path</code> <code>$MyInvocation</code><code>.InvocationName).Path </code>
<code> </code><code>$fullPara</code> <code>= </code><code>$boundPara</code> <code>+ </code><code>' '</code> <code>+ </code><code>$args</code> <code>-join </code><code>' '</code>
<code> </code><code>Start-Process</code> <code>"$psHome\powershell.exe"</code> <code>-ArgumentList </code><code>"$currentFile $fullPara"</code> <code>-verb runas </code>
<code> </code><code>return</code>
<code>} </code>
<code>#endregion</code>
<code>$numA</code> <code>= 1</code>
<code>do</code><code>{</code>
<code> </code><code>Echo </code><code>"##################"</code>
<code> </code><code>Echo </code><code>"# 1.IP1 #"</code>
<code> </code><code>Echo </code><code>"# 2.IP2 #"</code>
<code> </code><code>Echo </code><code>"# 3.IP3 #"</code>
<code> </code><code>Echo </code><code>"# 4.退出 #"</code>
<code> </code><code>Echo </code><code>"`n"</code>
<code> </code><code>$SelectString</code> <code>= </code><code>Read-Host</code> <code>"请选择地点"</code>
<code> </code><code>$wmi</code> <code>= </code><code>Get-WmiObject</code> <code>win32_networkadapterconfiguration -</code><code>filter</code> <code>"ipenabled = 'true'"</code>
<code> </code><code>switch</code><code>(</code><code>$SelectString</code><code>){</code>
<code> </code><code>1 { </code>
<code> </code><code>$wmi</code><code>.EnableStatic(</code><code>"192.168.27.16"</code><code>, </code><code>"255.255.255.0"</code><code>) ></code><code>$null</code>
<code> </code><code>$wmi</code><code>.SetGateways(</code><code>"192.168.27.2"</code><code>,1) ></code><code>$null</code>
<code> </code><code>$wmi</code><code>.SetDNSServerSearchOrder(</code><code>"192.168.0.254"</code><code>) ></code><code>$null</code>
<code> </code><code>}</code>
<code> </code><code>2 {</code>
<code> </code><code>$wmi</code><code>.EnableStatic(</code><code>"10.0.0.16"</code><code>, </code><code>"255.0.0.0"</code><code>) ></code><code>$null</code>
<code> </code><code>$wmi</code><code>.SetGateways(</code><code>"10.0.0.2"</code><code>,1) ></code><code>$null</code>
<code> </code><code>$wmi</code><code>.SetDNSServerSearchOrder(</code><code>"10.0.0.254"</code><code>) ></code><code>$null</code>
<code> </code><code>}</code>
<code> </code><code>3 {</code>
<code> </code><code>$wmi</code><code>.EnableStatic(</code><code>"192.168.254.108"</code><code>, </code><code>"255.255.255.0"</code><code>) ></code><code>$null</code>
<code> </code><code>$wmi</code><code>.SetGateways(</code><code>"192.168.254.254"</code><code>,1) ></code><code>$null</code>
<code> </code><code>$wmi</code><code>.SetDNSServerSearchOrder(</code><code>"192.168.254.254"</code><code>) ></code><code>$null</code>
<code> </code><code>4 {</code>
<code> </code><code>Exit</code>
<code> </code><code>} </code>
<code> </code><code>Default</code> <code>{</code><code>"输入错误!请重新启动选择~"</code><code>}</code>
<code> </code><code>}</code>
<code> </code><code>Echo </code><code>"请核对修改后的IP地址是否正确~"</code>
<code> </code><code>$IPAddress</code> <code>= </code><code>$wmi</code><code>.IPAddress</code>
<code> </code><code>$Subnet</code> <code>= </code><code>$wmi</code><code>.IPSubnet</code>
<code> </code><code>$DefaultIPGateway</code> <code>= </code><code>$wmi</code><code>.DefaultIPGateway</code>
<code> </code><code>$DNS</code> <code>= </code><code>$wmi</code><code>.DNSServerSearchOrder</code>
<code> </code><code>Echo </code><code>" IP地址:$IPAddress"</code>
<code> </code><code>Echo </code><code>"子网地址:$Subnet"</code>
<code> </code><code>Echo </code><code>"默认网关:$DefaultIPGateway"</code>
<code> </code><code>Echo </code><code>" DNS:$DNS"</code>
<code>} </code><code>While</code><code>(</code><code>$numA</code> <code>-eq</code> <code>1)</code>
<code></code>
本文转自 bannerpei 51CTO博客,原文链接:http://blog.51cto.com/281816327/1841304,如需转载请自行联系原作者