PowerShell에서 코드 주석 처리하는 방법

  1. PowerShell 한 줄 주석 사용하기 (#)
  2. PowerShell 여러 줄 주석 처리하기 위한 주석 블록 사용
  3. PowerShell 엣지 케이스 시나리오 Exit 명령어 사용하기
PowerShell에서 코드 주석 처리하는 방법

다른 언어인 Bash, Python, Ruby를 사용한 경험이 있다면, Windows PowerShell에서 주석을 다는 방법은 비슷할 것입니다.

이 문서에서는 Windows PowerShell에서 코드를 주석 처리하는 데 사용할 수 있는 모든 사용 사례에 대해 논의할 것입니다.

PowerShell 한 줄 주석 사용하기 (#)

PowerShell V1.0이 공개될 때부터 코드에 주석을 다는 기능이 포함되어 있었습니다. 주석을 다는 데 사용하는 기호는 (#)입니다. 이 기호는 번호 기호 또는 해시 등 여러 이름으로 불리지만, Microsoft에서는 공식적으로 이를 주석 기호라고 부릅니다.

단일 주석 기호 (#)는 첫 번째 #부터 줄 끝까지 코드를 주석 처리합니다. 물론, 한 줄에 여러 개의 주석 기호를 넣는 것도 가능합니다.

예시 코드:

#######################################################
# Examples of one-line comments in Windows PowerShell #
#######################################################

Get-Process -Name *host* #### You could put more.

Get-Process -Name *host* # | Stop-Service # You can use it to comment out a part of a line.

# Get-Process -Name *host* # This will comment out the whole line.

코드에 주석을 달 때는 주석 기호와 코드 사이에 공백을 두는 것이 모범 사례입니다. 일부 cmdlet은 주석 기호를 사용하지만 코드 주석을 위한 것은 아닙니다. 예를 들어, #REQUIRES cmdlet은 스크립트가 모듈 또는 필수 스냅인 조건을 충족하지 않으면 실행되지 않도록 하는 잘 알려진 PowerShell 문장입니다.

예시 코드:

Get-Module AzureRM.Netcore | Remove-Module
#REQUIRES -Modules AzureRM.Netcore

이러한 모범 사례를 사용하면 스크립트에서 불필요한 오류를 피할 수 있습니다.

PowerShell 여러 줄 주석 처리하기 위한 주석 블록 사용

각 줄에 여러 개의 주석 기호를 사용하지 않고 여러 줄의 코드를 주석 처리하려면, 주석 기호를 <> 기호로 편리하게 둘러싸면 됩니다. 이를 주석 블록이라고 부릅니다.

덜 기호(<)가 있는 주석 기호 (<#)는 주석 블록의 시작 태그 역할을 하며, 더 기호(>)가 있는 주석 기호는 닫는 태그로 사용됩니다 (#>).

예시 코드:

<#
Get-Process -Name *host*
Stop-Service -DisplayName Windows*Update -WhatIf
#>

그러나 주석 블록 태그의 새 집합을 삽입하여 주석 블록을 중첩하면 오류가 발생합니다.

예시 코드:

<#
Nope, these are not allowed in PowerShell.

<# This will break your first multiline comment block... #>

...and this will throw a syntax error. #This line will execute the throw cmdlet
#>

대안으로, Ctrl+J를 누르고 Comment Block을 클릭하면 스크립트에 코드 블록이 생성됩니다.

PowerShell 엣지 케이스 시나리오 Exit 명령어 사용하기

Exit 명령어는 스크립팅 환경을 종료하고 닫기 때문에, Exit 명령어 이후에 작성된 내용은 실행되지 않는다는 점을 기억하세요. 이를 엣지 케이스 시나리오라고 부릅니다. Exit 명령어 뒤에 무언가를 작성하는 것은 가능하지만 권장되지 않습니다. 다른 스크립팅 환경이 이러한 추가 줄을 잘못 읽어 오류를 발생시킬 수 있습니다.

예시 코드:

Get-Process -Name 'host1'
exit

Anything beyond the `<# exit #>` line is not executed inside the PowerShell scripting environment. However, as mentioned before, this is not recommended despite being possible.
튜토리얼이 마음에 드시나요? DelftStack을 구독하세요 YouTube에서 저희가 더 많은 고품질 비디오 가이드를 제작할 수 있도록 지원해주세요. 구독하다
Marion Paul Kenneth Mendoza avatar Marion Paul Kenneth Mendoza avatar

Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.

LinkedIn