다음을 통해 공유


Get-IseSnippet

사용자가 만든 코드 조각을 가져옵니다.

구문

Get-IseSnippet []

Description

Get-IseSnippet cmdlet은 사용자가 만든 재사용 가능한 텍스트 조각을 포함하는 PS1XML 파일을 가져옵니다. Windows PowerShell ISE(통합 스크립팅 환경)에서만 작동합니다.

New-IseSnippet cmdlet을 사용하여 코드 조각을 만들 때 New-IseSnippet<SnippetTitle>.Snippets.ps1xml 디렉터리에 $HOME\Documents\WindowsPowerShell\Snippets 파일을 만듭니다. Get-IseSnippet 코드 조각 디렉터리의 코드 조각을 가져옵니다.

이 cmdlet은 Import-IseSnippet cmdlet을 통해 모듈에서 가져온 기본 제공 코드 조각 또는 코드 조각을 가져오지 않습니다.

이 cmdlet은 Windows PowerShell 3.0에서 도입되었습니다.

예제

예제 1: 모든 사용자 정의 코드 조각 가져오기

이 예제에서는 코드 조각 디렉터리의 모든 사용자 정의 코드 조각을 가져옵니다.

Get-IseSnippet

예제 2: 원격 컴퓨터에서 공유 디렉터리로 모든 사용자 정의 코드 조각 복사

다음은 사용자가 만든 모든 코드 조각을 원격 컴퓨터 그룹에서 공유 코드 조각 디렉터리로 복사하는 예제입니다.

Invoke-Command -Computer (Get-Content Servers.txt) -ScriptBlock {
    Get-IseSnippet | Copy-Item -Destination \\Server01\Share01\Snippets
}

Invoke-Command Get-IseSnippet 파일의 컴퓨터에서 Servers.txt 실행됩니다. 파이프라인 연산자(|)는 코드 조각 파일을 Copy-Item cmdlet으로 전송하여 Destination 매개 변수로 지정된 디렉터리에 복사합니다.

예제 3: 로컬 컴퓨터에 각 코드 조각의 제목과 텍스트 표시

이 예제에서는 Get-IseSnippetSelect-Xml cmdlet을 사용하여 로컬 컴퓨터에 각 코드 조각의 제목과 텍스트를 표시합니다.

#Parse-Snippet Function
function Parse-Snippet {
  $SnippetFiles = Get-IseSnippet
  $SnippetNamespace = @{x="http://schemas.microsoft.com/PowerShell/Snippets"}
  foreach ($SnippetFile in $SnippetFiles) {
     Write-Host ""
     $Title = Select-Xml -Path $SnippetFile.FullName -Namespace $SnippetNamespace -XPath "//x:Title" |
       ForEach-Object {$_.Node.InnerXml}
     $Text = Select-Xml -Path $SnippetFile.FullName -Namespace $SnippetNamespace -XPath "//x:Script" |
       ForEach-Object {$_.Node.InnerText}
     Write-Host "Title: $Title"
     Write-Host "Text: $Text"
   }
}

Title: Mandatory
Text:
param
(
  [Parameter(Mandatory=True)]
  [string[]]
  $<ParameterName>
)

Title: Copyright
Text:  (c) Fabrikam, Inc. 2012

예제 4: 세션의 모든 코드 조각에 대한 제목 및 설명 표시

다음은 기본 제공 코드 조각, 사용자 정의 코드 조각 및 가져온 코드 조각을 포함하여 세션의 모든 코드 조각에 대한 제목과 설명을 표시하는 예제입니다.

$psISE.CurrentPowerShellTab.Snippets | Format-Table DisplayTitle, Description

$psISE 변수는 Windows PowerShell ISE 호스트 프로그램을 나타냅니다. 변수의 $psISE 속성은 현재 세션을 나타냅니다. 코드 조각 속성은 현재 세션의 코드 조각을 나타냅니다.

$psISE.CurrentPowerShellTab.Snippets 명령은 cmdlet과 달리 코드 조각을 나타내는 Get-IseSnippet 개체를 반환합니다. Get-IseSnippet 코드 조각을 나타내는 파일 개체(System.Io.FileInfo)를 반환합니다.

Format-Table cmdlet은 테이블에 있는 코드 조각의 DisplayTitleDescription 속성을 표시합니다.

입력

None

개체를 이 cmdlet으로 파이프할 수 없습니다.

출력

FileInfo

이 cmdlet은 코드 조각을 나타내는 파일 개체를 반환합니다.

참고

  • New-IseSnippet cmdlet은 서명되지 않은 .ps1xml 파일에 사용자가 만든 새 코드 조각을 저장합니다. 따라서 Windows PowerShell은 실행 정책이 AllSigned 또는 제한된 세션에 추가할 수 없습니다. 제한된 또는 AllSigned 세션에서 서명되지 않은 사용자가 만든 코드 조각을 만들고 가져오고 가져올 수 있지만 세션에서 사용할 수는 없습니다.

    Get-IseSnippet cmdlet이 반환하는 서명되지 않은 사용자 생성 코드 조각을 사용하려면 실행 정책을 변경한 다음 Windows PowerShell ISE를 다시 시작합니다.

    Windows PowerShell 실행 정책에 대한 자세한 내용은 about_Execution_Policies참조하세요.