Убить процесс после определенного вывода в powershell - PullRequest
0 голосов
/ 15 октября 2019

Я следую недокументированному подходу, чтобы изменить параметры сортировки экземпляра сервера SQL, используя следующую команду:

sqlservr -m -T4022 -T3659 -s"SQL2017" -q"SQL_Latin1_General_CP1_CI_AI"

После выполнения этой команды через определенное время мы получим следующий вывод:

"The default collation was successfully changed"

Но даже после этого вывода процесс продолжается, и нам нужно убить его, нажав клавиши CTRL + C. Как я могу добиться этого с помощью powershell? Я хочу автоматизировать этот процесс.

1 Ответ

0 голосов
/ 15 октября 2019

Вы можете проверить переменную $LASTEXITCODE.

Примерно так:

sqlservr -m -T4022 -T3659 -s"SQL2017" -q"SQL_Latin1_General_CP1_CI_AI"

if ($LASTEXITCODE -gt 0) {
    throw "Error changing server collation with the code '$LASTEXITCODE'"
}
...