Windows PowerShell의 새로운 기능
업데이트 날짜: 2009년 1월
적용 대상: Windows Server 2008 R2
Windows PowerShell™은 특별히 시스템 관리를 위해 설계된 명령줄 셸 및 스크립팅 언어입니다. Microsoft .NET Framework에서 구축된 Windows PowerShell을 사용하여 IT 전문가는 Windows 운영 체제 및 Windows 운영 체제에서 실행되는 응용 프로그램의 관리를 제어하고 자동화할 수 있습니다.
cmdlet이라고 하는 Windows PowerShell의 간단한 명령 도구를 사용하여 기업 내의 컴퓨터를 명령줄에서 관리할 수 있습니다. 또한 Windows PowerShell 공급자를 통해서는 파일 시스템에 액세스하는 것처럼 쉽게 레지스트리 및 인증서 저장소와 같은 데이터 저장소에 액세스할 수 있습니다. 덧붙여 Windows PowerShell은 모든 WMI(Windows Management Instrumentation) 클래스를 완벽하게 지원합니다.
Windows PowerShell은 완전히 확장 가능합니다. cmdlet, 공급자, 함수, 스크립트 등을 직접 작성할 수 있으며 이 항목을 모듈로 패키징하여 다른 사용자와 공유할 수 있습니다.
Windows Server® 2008 R2에는 Windows PowerShell 2.0이 포함되어 있습니다. 또한 Windows PowerShell에 추가할 수 있는 cmdlet과 공급자도 포함되므로 Windows PowerShell에서 다른 Windows Server 역할과 기능을 사용하고 관리할 수 있습니다. Windows PowerShell에서 관리할 수 있는 서버 역할 및 기능으로는 Active Directory® 도메인 서비스, Windows® BitLocker™ 드라이브 암호화, DHCP 서버 서비스, 그룹 정책, 원격 데스크톱 서비스, Windows Server 백업 등이 있습니다. 자세한 내용은 역할 및 기능에 대한 Windows PowerShell Cmdlet의 새로운 기능을 참조하십시오.
주요 변경 내용
Windows Server 2008 R2에서 Windows PowerShell의 변경 내용은 다음과 같습니다.
-
새로운 cmdlet. Windows PowerShell에는 Get-Hotfix, Send-MailMessage, Get-ComputerRestorePoint, New-WebServiceProxy, Debug-Process, Add-Computer, Rename-Computer 및 Reset-ComputerMachinePassword를 포함하여 100개 이상의 새로운 cmdlet이 포함됩니다.
-
원격 관리. 컴퓨터 한 대에서든 수백 대에서든 단일 명령을 사용하여 명령을 실행할 수 있습니다. 단일 컴퓨터를 사용하여 대화형 세션을 설정하거나 여러 컴퓨터에서 원격 명령을 수신할 수 있는 세션을 설정할 수 있습니다.
-
Windows PowerShell ISE(통합 스크립팅 환경). Windows PowerShell ISE는 Windows PowerShell용 그래픽 사용자 인터페이스로, 동일 창에서 명령을 실행하고 스크립트를 작성, 편집, 실행, 테스트 및 디버깅할 수 있도록 합니다. 이 인터페이스는 최대 8개의 개별 실행 환경을 제공하며, 기본 제공 디버거, 여러 줄 편집, 선택 실행, 구문 색 지정, 줄 및 열 번호, 상황에 맞는 도움말 등의 기능이 포함되어 있습니다. Windows PowerShell ISE는 Windows Server 2008 R2의 옵션 기능입니다. 이 인터페이스를 설치하려면 기능 추가 마법사를 사용합니다.
-
백그라운드 작업. Windows PowerShell 백그라운드 작업을 사용하면 "백그라운드에서" 명령을 비동기적으로 실행할 수 있으므로 세션 작업을 계속 수행할 수 있습니다. 로컬 또는 원격 컴퓨터에서 백그라운드 작업을 실행할 수 있으며 결과를 로컬 또는 원격으로 저장할 수 있습니다.
-
디버거. Windows PowerShell 디버거를 사용하면 기능 및 스크립트를 쉽게 디버깅할 수 있습니다. 중단점을 설정 및 제거하고, 코드를 단계별로 실행하고, 변수 값을 검사하고, 호출 스택 추적을 표시할 수 있습니다.
-
모듈. Windows PowerShell 모듈을 사용하면 사용자의 Windows PowerShell 스크립트 및 기능을 독립적인 자체 포함된 단위로 구성할 수 있습니다. cmdlet, 공급자, 스크립트, 함수 및 기타 파일을 모듈로 패키징하여 다른 사용자에게 배포할 수 있습니다. 모듈은 Windows PowerShell 스냅인보다 쉽게 설치하여 사용할 수 있습니다. 모듈에는 오디오 파일, 이미지, 도움말 파일, 아이콘 등 모든 종류의 파일이 포함될 수 있습니다. 모듈은 이름 충돌을 방지하기 위해 별개의 세션으로 실행됩니다.
-
트랜잭션. Windows PowerShell에서는 트랜잭션을 지원하므로 명령 집합을 논리적 단위로 관리할 수 있습니다. 트랜잭션은 커밋하거나 완전히 실행 취소할 수 있으므로 영향받는 데이터가 트랜잭션에 의해 변경되지 않도록 할 수 있습니다.
-
이벤트. Windows PowerShell에는 사용자가 이벤트를 만들고, 시스템 및 응용 프로그램 이벤트를 구독하고, 이벤트에 대해 동기적 및 비동기적으로 수신 및 전달하거나 이벤트에 대한 조치를 취할 수 있는 새로운 이벤트 인프라가 포함되어 있습니다.
-
고급 함수. 고급 함수는 cmdlet과 동일한 방식으로 작동하지만 C# 대신 Windows PowerShell 스크립팅 언어로 작성됩니다.
-
스크립트 국제화. 스크립트 및 함수는 메시지와 도움말 텍스트를 여러 언어로 사용자에게 표시할 수 있습니다.
-
온라인 도움말. 명령줄에서의 도움말 외에도, Get-Help cmdlet에 새로 포함된 온라인 매개 변수를 사용하면 Microsoft TechNet의 각 도움말 항목에 대해 전체 내용을 최신 버전으로 열 수 있습니다.
이 기능의 대상 사용자
이러한 변경 내용이 특히 유용할 수 있는 그룹은 다음과 같습니다.
- 명령줄에서 Windows를 관리하고 관리 작업을 자동화하려는 IT 전문가
- 포괄적인 Windows PowerShell 스크립팅 언어를 사용하여 .NET Framework 응용 프로그램을 작성하고 Windows PowerShell을 확장하려는 개발자
- 시스템을 관리하고 작업을 자동화할 수 있는 스크립트를 작성하고 프로그래밍 언어를 배울 필요 없이 새로운 도구를 작성하기 위해 Windows PowerShell을 배우려는 모든 사용자
특별 고려 사항
Windows PowerShell의 시스템 및 기능 요구 사항은 다음과 같습니다.
- Windows PowerShell을 사용하려면 Microsoft .NET Framework 2.0이 필요합니다.
- Windows PowerShell용 그래픽 사용자 인터페이스 프로그램인 Windows PowerShell ISE에는 Microsoft .NET Framework 3.5 서비스 팩 1이 필요합니다. 기능 추가 마법사를 사용하여 Windows PowerShell ISE를 설치하면 시스템에 아직 설치되지 않은 경우 필요한 모든 Microsoft .NET Framework 버전이 함께 설치됩니다.
- Out-GridView cmdlet에는 Microsoft .NET Framework 3.5 서비스 팩 1이 필요합니다.
- Get-WinEvent cmdlet에는 Windows Vista® 이상의 Windows 버전과 Microsoft .NET Framework 3.5가 필요합니다.
- Export-Counter cmdlet은 Windows Server 2008 R2, Windows® 7 및 이후 버전의 Windows에서만 실행됩니다.
- Windows PowerShell의 WMI 기반 원격 지원 기능의 경우 특별히 구성할 필요가 없으며 Windows PowerShell을 지원하는 모든 버전의 Windows에서 실행됩니다. WS-Management 기반 원격 지원 기능에는 Windows Vista 이상 버전의 Windows를 실행하는 로컬 및 원격 컴퓨터가 모두 필요합니다. 또한 모든 관련 컴퓨터에서 WS-Management를 설정 및 구성해야 합니다. 자세한 내용은 About_Remote를 참조하십시오.
- 일부 cmdlet은 현재 사용자가 컴퓨터에서 Administrators 그룹의 구성원이거나 현재 사용자가 Administrators 그룹의 구성원에 대한 자격 증명을 제공할 수 있는 경우에만 작동합니다. 이러한 요구 사항은 해당 cmdlet의 도움말 항목에 설명되어 있습니다.
추가 또는 변경된 설정
HKLM\SOFTWARE\Microsoft\PowerShell\1\PowerShellEngine에 있는 PowerShellVersion 레지스트리 항목의 값이 변경되었습니다.
레지스트리 설정
| 설정 이름 | 위치 | 이전 기본값(해당하는 경우) | 기본값 | 가능한 값 |
|---|---|---|---|---|
|
PowerShellVersion |
HKLM\SOFTWARE\Microsoft\PowerShell\1\PowerShellEngine |
1.0 |
2.0 |
1.0, 2.0 |
그룹 정책 설정
| 설정 이름 | 위치 | 이전 기본값(해당하는 경우) | 기본값 | 가능한 값 |
|---|---|---|---|---|
|
스크립트 실행 켜기 |
Administrative Templates\Classic Administrative Templates\Windows Components\Windows PowerShell |
Restricted |
Restricted |
Restricted, AllSigned, RemoteSigned, Unrestricted |
기존 코드 변경 여부
아니요. Windows PowerShell 2.0은 이전 버전과 호환됩니다. Windows PowerShell 1.0용으로 작성된 함수, 스크립트, cmdlet 및 공급자는 그대로 Windows PowerShell 2.0에서 실행됩니다. 제품에 포함된 릴리스 정보에는 몇 가지 새로운 변경 내용이 정리 및 설명되어 있습니다.
이 기능의 배포 준비 방법
WS-Management 기반 원격 지원을 위해서는 Windows PowerShell을 모든 로컬 및 원격 컴퓨터에 설치해야 합니다. 해당 컴퓨터에서는 Windows Vista 이상 버전의 Windows를 실행해야 합니다. 또한 WS-Management 원격 지원 기능을 설정 및 구성해야 합니다.
이 기능을 포함하는 버전
Windows PowerShell은 모든 버전으로 사용할 수 있습니다. Windows PowerShell ISE는 Windows Server 2008 R2의 옵션 구성 요소입니다. 이 인터페이스를 설치하려면 기능 추가 마법사를 사용합니다.
32비트 및 64비트 버전에서 사용 가능한지 여부
가능합니다.
추가 참조
명령줄에서 사용할 수 있는 도움말 외에도 추가 정보를 위해 다음과 같은 리소스를 참조할 수 있습니다.
-
TechNet의 Windows PowerShell 도움말(영문일 수 있음). Microsoft TechNet의 최신 Windows PowerShell 도움말 항목.
-
Windows PowerShell 블로그(영문일 수 있음). 다른 Windows PowerShell 사용자에게서 유용한 정보를 얻고 협의할 수 있는 최상의 리소스입니다. Windows PowerShell 블로그를 읽고 Windows PowerShell 사용자 포럼(microsoft.public.windows.powershell)에 가입합니다. Windows Live Search를 사용하여 다른 Windows PowerShell 블로그 및 리소스를 찾습니다. 이러한 정보를 자유롭게 참조하여 작업하면서 나만의 아이디어를 개발합니다.
-
Windows PowerShell SDK(영문일 수 있음). cmdlet, 공급자 및 호스트 응용 프로그램을 개발하는 데 사용되는 참조 콘텐츠를 제공합니다.
-
Windows PowerShell 프로그래머 가이드(영문일 수 있음). cmdlet, 공급자 및 호스팅 응용 프로그램을 만들기 위한 자습서를 제공합니다. 또한 기본 Windows PowerShell 개념도 제공되어 있습니다.
