Как вернуть ошибки обратно из модуля в основной скрипт в powershell? - PullRequest
0 голосов
/ 03 марта 2020

Я создал модуль PowerShell SearchGoogle.psm1:

function SearchGoogle($queryString) {
    try {
        $searchURL = "http://www.google.co.uk?q={0}" -f $queryString
        $WebResponse = Invoke-WebRequest $searchURL
        return $WebResponse
    }
    catch {
        $error = "ERROR: Unable to get URL: $searchURL"
        return $error
    }
}

Теперь я хочу вызвать это из моего основного скрипта main.ps1 следующим образом:

Import-Module .\SearchGoogle.psm1
$result = SearchGoogle "hello world"

if($result -like "ERROR:*") {
    #log error

    # do not progress program any further
    Exit
}

Это работает хорошо, и я могу контролировать ведение журнала в моей основной программе, а теперь и в модуле. Однако я не уверен, что это лучший способ сделать что-либо.

Если я использую в своем модуле команду «Ошибка: бла», я не могу знать, что происходит в моей основной программе, чтобы сделать решения.

Любое руководство будет оценено, спасибо.

...