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

반복문 (For, ForEach, Do ~ while, While)

by 예배파 2024. 2. 9.

파워쉘 반복문은 명령들을 조건이 맞을 때까지 반복적으로 실행하거나,

배열이나 컬렉션에 저장되어 있는 수 만큼 반복해서 명령들을 수행합니다

 

반복문은 4가지 방법으로 사용됩니다

  • For
  • ForEach
  • Do while
  • while

 

 

For

 

for(초기화; 조건; 반복) 

for($a=1; $a -le 3; $a++){
    Write-Host $a
}

실행결과
1
2
3
$arr = 1,2,3   #숫자배열생성
for($a = 0; $a -le $arr.Count; $a++){        #$arr.Count는 배열의 갯수
    Write-Host $arr[$a]
}

실행결과
1
2
3

배열의 전체 값을 읽을때는 ForEach를 사용하는 것이 더 편합니다

 

 

 

ForEach

 

배열이나 컬렉션의 모든 내용만큼 반복 수행

$arr = 1,2,3
ForEach($a in $arr){    #a에는 $arr 배열의 첫번째, 두번째, 세번째 값이 할당됨
    Write-Host $a
} 

실행결과
1
2
3

 

 

 

Do - While

 

while의 조건이 참이면 블록안의 명령들 수행

조건을 판별하는게 명령어 블록 마지막에 있기 때문에 조건이 거짓이어도 블록안의 명령어들은 적어도 한 번은 실행이 됩니다

$a = 0
Do {
    Write-Host $a
    $a = $a + 1               
} while($a -ne 3)

실행결과
0
1
2

$a = $a + 1 의미는 
$a 의 값에 1을 더해서, 다시 $a에 저장하는 의미 입니다

예를들어 $a 의 값이 1이면, 1 + 1의 값을 다시 $a에 저장해서 $a의 값은 2가 됩니다

$a++ 로 줄여서 사용하기도 합니다

 

 

 

While 


while(조건) { 명령어들 }

조건이 참이면 블록안의 명령어들을 수행

do while과 다르게 while은 조건 판별을 처음에 하기 때문에, 조건이 거짓이면 블록내의 명령어들은 실행이 되지 않습니다

$a = 1
while($a -ne 3){
    Write-Host $a
    $a++           #$a = $a + 1 과 같은 표현
}

실행결과
0
1
2

 

 



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

파워쉘 해시 테이블(Powershell HashTable)  (0) 2024.03.08
ArrayList  (0) 2024.03.07
배열 - Array  (0) 2024.01.21
조건문 - if, switch  (0) 2024.01.19
파워쉘 문자열  (0) 2024.01.17