이 출시되었습니다! 11월의 새로운 기능 및 수정 사항을 읽어보세요.

Visual Studio Code의 PowerShell

PowerShell은 모든 플랫폼에서 관리자에게 강력한 도구 세트를 제공하는 .NET 기반의 작업 기반 명령줄 셸 및 스크립팅 언어입니다.

Visual Studio Code(VS Code)용 Microsoft PowerShell 확장은 구문 완성, 정의 추적, PowerShell 구문 검사 등 풍부한 언어 지원 및 기능을 제공합니다. 이 확장은 현재 지원되는 PowerShell 7+ 버전을 사용하여 VS Code가 지원되는 모든 곳에서 작동합니다.

Windows PowerShell 5.1에 대한 지원은 최선을 다해 제공됩니다. .NET Framework 4.8 이상이 필요합니다.

VS Code 원격 개발 환경, GitHub CodespacesVS Code Server를 포함하여 지원됩니다.

중요

웹용 Visual Studio Code는 PowerShell 엔진이 이 환경에서 실행될 수 없으므로 기본 구문 강조 표시와 같은 제한된 기능만 지원됩니다.

다음 구성을 적극적으로 테스트합니다.

  • Windows Server 2022 (Windows PowerShell 5.1 및 PowerShell 7+ 포함)
  • macOS 14.7 (PowerShell 7+ 포함)
  • Ubuntu 24.04 (PowerShell 7+ 포함)

Windows에서는 제한 언어 모드를 활성화한 경우와 그렇지 않은 경우 모두 테스트합니다.

PowerShell 확장 설치

PowerShell 확장은 설치 버튼을 클릭하여 Visual Studio Code Marketplace에서 설치할 수 있습니다. 또는 VS Code 내에서 **확장** 보기를 열고 키보드 바로 가기 ⇧⌘X (Windows, Linux Ctrl+Shift+X)를 누르고 *PowerShell*을 입력한 다음 PowerShell 확장을 선택하여 설치할 수도 있습니다.

PowerShell extension

주요 기능

  • 구문 강조 표시
  • 고급 내장 코드 조각
  • cmdlet 등에 대한 IntelliSense
  • 문제 (PowerShell 스크립트 분석기에서 보고)
  • cmdlet, 변수, 클래스 등의 정의로 이동
  • cmdlet, 변수, 클래스 등의 참조 찾기
  • 문서 및 작업 영역 기호 탐색
  • 기호 기반 개요 보기
  • 현재 터미널에서 선택한 PowerShell 코드를 실행합니다. (F8)
  • 커서 아래 기호에 대한 온라인 도움말을 시작합니다. (Ctrl + F1)
  • PowerShell 디버거 통합
  • 디버거와 상호 작용할 수 있는 확장 터미널 (Set-PSBreakpoint 시도!)
  • PowerShell ISE 테마를 테마 선택기에서 사용할 수 있습니다.
  • ISE 모드도 시도해 보세요. 명령 팔레트 (⇧⌘P (Windows, Linux Ctrl+Shift+P))에서 "ISE 모드 사용"을 검색하세요.

디버깅

PowerShell 확장은 VS Code의 내장 디버깅 인터페이스를 사용하여 PowerShell 스크립트 및 모듈 디버깅을 지원합니다. PowerShell 디버깅에 대한 자세한 내용은 VS Code 사용을 참조하세요.

다중 버전 지원

PowerShell 확장이 설치된 지원되는 PowerShell 버전을 사용하도록 PowerShell 확장을 구성하려면 이 지침을 따르세요.

또는 명령 팔레트 (⇧⌘P (Windows, Linux Ctrl+Shift+P))에서 **PowerShell: 세션 메뉴 표시** 명령을 실행하세요.

CodeLens 지원

CodeLens는 소스 코드 내에 표시되는 실행 가능하고 컨텍스트 정보인 VS Code 기능입니다.

CodeLens 기능은 다음과 같습니다.

  • Pester **테스트 실행** 및 **테스트 디버깅**.

    Pester CodeLens Integration

  • Pester 기호 지원

    CodeLens Pester Symbol Support

  • 함수, 변수, 클래스 및 기타 기호 참조

    CodeLens 참조 지원은 코드 내에서 기호가 참조되는 횟수를 표시하고 특정 참조로 이동할 수 있게 해줍니다.

    CodeLens Function Reference Support

PSScriptAnalyzer 통합

PSScriptAnalyzer는 모듈 및 스크립트에 대한 정적 소스 코드 검사기를 제공하는 PowerShell 모듈입니다. **PSScriptAnalyzer**는 PowerShell 코드의 품질을 확인하는 규칙을 가지고 있습니다. 이러한 규칙은 PowerShell 팀과 커뮤니티에서 식별한 PowerShell 모범 사례를 기반으로 합니다. **PSScriptAnalyzer**는 사용자에게 잠재적인 코드 결함을 알리고 개선을 위한 가능한 솔루션을 제안하는 진단 레코드(오류 및 경고)를 생성합니다.

PowerShell 확장은 기본적으로 **PSScriptAnalyzer**를 포함하며 VS Code에서 편집하는 PowerShell 스크립트 파일에 대해 자동으로 분석을 수행합니다.

**PSScriptAnalyzer**에는 초기화되지 않은 변수의 존재, PSCredential 형식의 사용, Invoke-Expression의 사용 등 다양한 PowerShell 소스 코드 측면을 확인하는 내장 규칙 모음이 포함되어 있습니다. 이 모듈을 사용하면 특정 규칙을 포함하거나 제외할 수도 있습니다.

**PSScriptAnalyzer**를 비활성화하려면 설정을 열고(⌘, (Windows, Linux Ctrl+,)) **확장**으로 이동한 다음 **PowerShell** 확장을 선택하고 **스크립트 분석: 사용** (powershell.scriptAnalysis.enable) 옆의 확인란을 선택 해제하세요.

PSScriptAnalyzer Settings

**PSScriptAnalyzer**는 코드 서식도 제공합니다. **문서 서식** 명령이나 (⇧⌥F (Windows Shift+Alt+F, Linux Ctrl+Shift+I)) 키보드 바로 가기를 사용하여 자동 문서 서식을 호출할 수 있습니다.

Pester 통합

Pester는 단위 테스트를 실행하기 위한 프레임워크이며 Windows PowerShell 5.1에는 **Pester** 3.40이 미리 설치되어 있습니다. Pester를 업데이트하거나 다른 플랫폼에 최신 버전을 설치하려면 Pester 설치 지침을 따르세요.

PowerShell 확장 설정

파일 > 설정 > 설정 메뉴 항목에서 VS Code 설정을 사용자 지정할 수 있습니다.

활동 표시줄 왼쪽 하단에 있는 톱니바퀴 아이콘을 선택할 수도 있습니다.

codeGear

설정을 열려면 키보드 바로 가기 ⌘, (Windows, Linux Ctrl+,)를 사용할 수도 있습니다. 명령 팔레트 (⇧⌘P (Windows, Linux Ctrl+Shift+P))에서 **환경 설정: 사용자 설정 열기(JSON)** 명령을 사용하거나 "workbench.settings.editor" 설정을 변경하여 settings.json 파일을 열 수 있습니다.

VS Code 설정 구성에 대한 자세한 내용은 사용자 및 작업 영역 설정을 참조하세요.

Types.ps1xml 및 Format.ps1xml 파일

PowerShell .ps1xml 파일은 유형 시스템을 확장하고 출력 서식을 정의하는 데 사용됩니다. 이러한 파일에 대한 자세한 내용은 Types.ps1xmlFormat.ps1xml에 대한 공식 PowerShell 설명서를 참조하세요. Red Hat의 XML 확장을 설치하면 .ps1xml 파일을 작성할 때 IntelliSense 기능을 얻을 수 있습니다. 설치 후 사용자 설정에 이 구성을 추가하세요.

"xml.fileAssociations": [
  {
    "systemId": "https://raw.githubusercontent.com/PowerShell/PowerShell/master/src/Schemas/Format.xsd",
    "pattern": "**/*.Format.ps1xml"
  },
  {
    "systemId": "https://raw.githubusercontent.com/PowerShell/PowerShell/master/src/Schemas/Types.xsd",
    "pattern": "**/*.Types.ps1xml"
  }
]

이 구성은 XML 확장이 모든 .ps1xml 파일에 대해 PowerShell 리포지토리의 공식 XML 스키마를 사용하도록 지시합니다. 이러한 스키마를 구성하면 ps1xml 파일에서 다음 기능이 활성화됩니다.

  • 구문 오류 보고
  • 스키마 유효성 검사
  • 태그 및 특성 완성
  • 자동 닫기 태그
  • 기호 강조 표시
  • 문서 접기
  • 문서 기호 및 개요
  • 이름 바꾸기 지원
  • 문서 서식

예제 스크립트

확장에 예제 스크립트가 포함되어 있으며 다음 경로에서 찾을 수 있습니다.

~/.vscode/extensions/ms-vscode.PowerShell-<version>/examples

VS Code에서 예제를 열거나 보려면 PowerShell 명령 프롬프트에서 다음을 실행하세요.

code (Get-ChildItem ~\.vscode\extensions\ms-vscode.PowerShell-*\examples)[-1]

명령 팔레트 (⇧⌘P (Windows, Linux Ctrl+Shift+P))에서 **PowerShell: 예제 폴더 열기** 명령을 사용하여 예제를 열 수도 있습니다.

Open PowerShell Examples

추가 자료

PowerShell 설명서에는 더 자세한 기사가 있습니다. VS Code 사용부터 시작하세요.

일반적인 질문에 대한 답변은 문제 해결 가이드를 확인하세요.

디버깅에 대한 자세한 내용은 @keithHill이 PowerShell 확장을 사용한 디버깅에 대해 작성한 Hey, Scripting Guy! 2부 블로그 게시물을 확인하세요.

새로운 기능 테스트 및 피드백 제공

가능하면 항상 미리 보기 버전을 사용해 보세요. 미리 보기 버전을 사용할 수 있으면 **미리 보기 버전으로 전환** 버튼을 사용하여 마켓플레이스에서 설치할 수 있습니다. 나타나는 **릴리스 버전으로 전환** 버튼을 사용하여 확장 안정 버전으로 다시 전환할 수 있습니다. **제거** 버튼 옆의 화살표를 사용하여 **다른 버전 설치...**를 선택하여 다른 버전의 확장으로 다운그레이드할 수도 있습니다.

Screenshot showing the button to switch to a pre-release version.

버그를 발견하면 이슈를 열고 수정하는 동안 안정 버전으로 되돌리세요.

© . This site is unofficial and not affiliated with Microsoft.