본문 바로가기
파워쉘(Powershell)/문법

조건문 - if, switch

by 예배파 2024. 1. 19.

If

 

조건이 참( true)이 명령어를 실행

 

If (조건) { 실행문 }
조건이 참이   실행문이 실행됩니다.

$color = “black”
If( $color -eq “black” ) { Write-Host “검은색 입니다” }

실행결과
검은색입니다

 

 

If(조건) { 실행문1 }
else { 실행문2  }
조건이  일때 실행문1 실행되고, 조건이 거짓일때 실행문 2 실행 됩니다.

$color = “red”
If( $color -eq “black” ) { Write-Host “검은색 입니다” }
else { Write-Host “검은색이 아닙니다” }

실행결과
검은색이 아닙니다

 

 

If(조건1){ 실행문1}
Elseif(조건2){ 실행문 2}
Else { 실행문 3 }

 

조건 1 참인 경우 실행문 1 실행, 조건2 참인경우 실행문 2 실행,

조건1,2 거짓인 경우에 else 다음의 실행문3  실행 됩니다.

$color = “red”
If( $color -eq “black” ) { Write-Host “검은색 입니다” }
elseif($color -eq “white”) { Write-Host “흰색 입니다” }
else { Write-Host “검은색, 흰색이 아닙니다”}

실행결과
검은색, 흰색이 아닙니다

 

 

조건문에서 사용하는 비교 연산자는 다음과 같습니다

-eq (equality:같다) 왼쪽과 오른쪽이 같다
-ne (같지 않다) 왼쪽과 오른쪽이 같지 않다
-gt(GreaterThan:크다) 왼쪽이 오른쪽 값보다 크다
-ge(GreaterThanOrEqual) 왼쪽값이 오른쪽 값보다 크거나 같다
-lt(LessThan) 왼쪽의 값이 오른쪽 값보다 작다
-le(LessTanOrEqual) 왼쪽의 값이 오른쪽 값보다 작거나 같다

 

 

 

 

Switch 

 

여러개의 조건 비교가 필요할  사용됩니다.

If 여러번 사용해도 되기는 하지만, switch 사용하면  간단히 스크립트를 작성할  있습니다.

$color = “red”
switch ($color){
	“red” { Write-Host “빨간색 입니다”; break }
    “black” { Write-Host “검은색 입니다”; break }
    “white” { Write-Host “흰색 입니다”; break }
    default { Write-Host “빨간색,검은,흰색이 아닙니다”; break }
}

실행결과
빨간색 입니다

 

Break switch문이 끝남을 알리기 때문에  이상 비교를 하지 않고 switch문을 벗어나게 됩니다

break문을 사용하지 않으면 계속 비교를 하게 되어서, 비슷한 조건이 더 있으면 그 명령도 수행합니다

이런 이유로 break를 사용해서 switch문을 종료 시키는 게 좋습니다

 

'파워쉘(Powershell) > 문법' 카테고리의 다른 글

ArrayList  (0) 2024.03.07
반복문 (For, ForEach, Do ~ while, While)  (0) 2024.02.09
배열 - Array  (0) 2024.01.21
파워쉘 문자열  (0) 2024.01.17
파워쉘 변수, 자료형  (0) 2024.01.17