다음을 통해 공유


Cmdlet 클래스 선언

Microsoft .NET Framework 클래스는 Cmdlet 특성을 클래스의 메타데이터로 지정하여 cmdlet으로 선언됩니다. (Cmdlet 특성은 모든 cmdlet에 필요한 유일한 특성입니다.) Cmdlet 특성을 지정할 때는 사용자에게 cmdlet을 식별하는 동사 및 명사 쌍을 지정해야 합니다. 또한 cmdlet에서 지원하는 Windows PowerShell 기능을 설명해야 합니다. Cmdlet 특성을 지정하는 데 사용되는 선언 구문에 대한 자세한 내용은 Cmdlet 특성 선언 을참조하세요.

참고

Cmdlet 특성은 System.Management.Automation.CmdletAttribute 클래스에 의해 정의됩니다. 이 클래스의 속성은 특성을 선언할 때 사용되는 선언 매개 변수에 해당합니다.

명사

cmdlet의 명사 는 cmdlet이 작동할 리소스를 지정합니다. 명사 는 cmdlet을 다른 cmdlet과 구분합니다.

cmdlet 이름의 명사에는 구체적이어야 하며 서버와 같은 일반 명사인 경우 리소스를 다른 유사한 리소스와 구별하는 짧은 접두사 를 추가하는 것이 가장 좋습니다. 예를 들어 접두사로 명사 를 포함하는 cmdlet 이름은 Get-SQLServer 입니다. 보다 일반적인 동사와 특정 명사를 조합하면 사용자가 해당 작업으로 cmdlet을 빠르게 찾은 다음, 불필요한 cmdlet 이름 중복을 방지하면서 리소스로 cmdlet을 식별할 수 있습니다.

cmdlet 이름에 사용할 수 없는 특수 문자 목록은 필수 개발 지침 을 참조하세요.

동사

동사를 지정하는 경우 개발 지침에 따라 Windows PowerShell 제공된 미리 정의된 동사 중 하나를 사용해야 합니다. 이러한 미리 정의된 동사 중 하나를 사용하면 작성하는 cmdlet과 Microsoft 및 다른 사람이 작성한 cmdlet 간에 일관성을 유지할 수 있습니다. 예를 들어 "Get" 동사는 데이터를 검색하는 cmdlet에 사용됩니다.

동사에 대한 지침에 대한 자세한 내용은 Cmdlet 동사 이름 을 참조하세요. cmdlet 이름에 사용할 수 없는 특수 문자 목록은 필수 개발 지침 을 참조하세요.

Windows PowerShell 기능 지원

Cmdlet 특성을 사용하면 cmdlet이 Windows PowerShell 제공하는 일반적인 기능 중 일부를 지원하도록 지정할 수도 있습니다. 여기에는 사용자 피드백 확인(ShouldProcess 기능에 대한 지원이라고 함) 및 트랜잭션 지원과 같은 일반적인 기능에 대한 지원이 포함됩니다. (트랜잭션에 대한 지원은 Windows PowerShell 2.0에서 도입되었습니다.)

Cmdlet 특성을 지정하는 데 사용되는 선언 구문에 대한 자세한 내용은 Cmdlet 특성 선언 을참조하세요.

Cmdlet 클래스 정의

다음 코드는 GetProc cmdlet 클래스에 대한 정의입니다. 파스칼식 대/소문자 구분이 사용되고 클래스 이름에 cmdlet의 동사와 명사가 포함됩니다.

[Cmdlet(VerbsCommon.Get, "Proc")]
public class GetProcCommand : Cmdlet

파스칼 대/소문자 구분

cmdlet의 이름을 지정할 때 파스칼식 대/소문자를 사용합니다. 예를 들어 Get-ItemGet-ItemProperty cmdlet은 cmdlet의 이름을 지정할 때 대문자를 사용하는 올바른 방법을 보여줍니다.

참고 항목

System.Management.Automation.CmdletAttribute

CmdletAttribute 선언

Cmdlet 동사 이름

Writing a Windows PowerShell Cmdlet(Windows PowerShell Cmdlet 작성)

Windows PowerShell SDK