我必须通过PowerShell检索代理服务器地址和端口,所以我可以使用Invoke-Webrequest -uri http://some-site.com -Proxy命令。 预期的输出应该看起来像http://proxy-server.com:port 。
我有一个PowerShell函数来检索代理服务器的地址和端口,所以我们可以在脚本中使用它?
这里是PowerShellfunction来实现我的目标:
function Get-InternetProxy { <# .SYNOPSIS Determine the internet proxy address .DESCRIPTION This function allows you to determine the the internet proxy address used by your computer .EXAMPLE Get-InternetProxy .Notes Author : Antoine DELRUE WebSite: http://obilan.be #> $proxies = (Get-ItemProperty -Path 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings').proxyServer if ($proxies) { if ($proxies -ilike "*=*") { $proxies -replace "=","://" -split(';') | Select-Object -First 1 } else { "http://" + $proxies } } }

希望这可以帮助 !
[System.Net.WebProxy]::GetDefaultProxy() | select address
[System.Net.WebProxy]是一个对象,它的一个静态方法是GetDefaultProxy() 。 select显示给我们从所有的列,我们感兴趣的,这是地址。
你首先得到的IE设置。 然后使用代理设置,如果他们是活跃的。
如果($ IESettings.ProxyEnable -eq 1)
$IESettings = Get-ItemProperty 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings' $Proxy = "http://$(($IESettings.ProxyServer.Split(';') | ? {$_ -match 'ttp='}) -replace '.*=')" Invoke-WebRequest 'http://some-site.com' -ProxyUseDefaultCredentials -Proxy $Proxy