powershell 2.0은 예외에 액세스하는 방법을 잡아보십시오


127

이것은 try catchPowerShell 2.0에 있습니다.

$urls = "http://www.google.com", "http://none.greenjump.nl", "http://www.nu.nl"
$wc = New-Object System.Net.WebClient 

foreach($url in $urls)
{
    try
    {
        $url
        $result=$wc.DownloadString($url)
    }
    catch [System.Net.WebException]
    {
        [void]$fails.Add("url webfailed $url")
    }  
}

하지만 내가하고 싶은 것은 C #과 같은 것입니다.

catch( WebException ex)
{
    Log(ex.ToString());
}

이게 가능해?

답변:


183

다음과 같이 해보십시오 :

try {
    $w = New-Object net.WebClient
    $d = $w.downloadString('http://foo')
}
catch [Net.WebException] {
    Write-Host $_.Exception.ToString()
}

$_변수에 예외가 있습니다. 다음 $_과 같이 탐색 할 수 있습니다 .

try {
    $w = New-Object net.WebClient
    $d = $w.downloadString('http://foo')
}
catch [Net.WebException] {
    $_ | fl * -Force
}

나는 그것이 당신에게 필요한 모든 정보를 줄 것이라고 생각합니다.

내 규칙 : 표시되지 않은 데이터가 있으면를 사용하십시오-force .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.