>source

여러 기능이있는 powershell 스크립트를 작성 중이며 다음 기능으로 이동하지 않고 중간에 오류가 발생하면 기능을 종료하고 싶습니다.

내 코드 :


    function A
    { 
        Write-Host "A Block Started" -ForegroundColor Yellow
    }
    
    function B
    {    
        $master_key = facter -p dev_master_key
        $pwd = facter -p certificate_pwd
        $scriptPath = "$PSScriptRoot\script.sql"
Invoke-Sqlcmd -InputFile "$scriptPath"
    
    }
    
    function C
    { 
        Write-Host "C Block Started" -ForegroundColor Yellow
    }
    
    function D
    { 
        Write-Host "D Block Started" -ForegroundColor Yellow
    }
    
    $stamp = Get-Date -UFormat "%Y-%m-%d-%H-%M-%S"
    Start-Transcript "C:\temp\script-$ENV-$stamp.log"
    $start = Get-Date
    
    A
    B
    C
    D
    
    $end = Get-Date
    $totaltime = $end - $start
    Write-Host "`nTime Elapsed: $($totaltime.tostring("hh\:mm\:ss"))" -ForegroundColor red -BackgroundColor white
    Stop-Transcript

함수에서 파일 내용을 변경 한 다음 스크립트를 트리거하려고합니다. 스크립트에 오류가 발생하면 오류가 표시되고 원하지 않는 다음 기능으로 이동합니다. 스크립트 자체를 종료하고 싶습니다.

  • 답변 # 1

    $ErrorActionPreference = "중지"가 작동해야합니다.

관련 자료

  • 이전 python - 열로 계산하고 특정 조건에서 중지하는 방법은 무엇입니까?
  • 다음 python 3.x - 할당 전에 참조 된 지역 변수 '커서'