다음을 통해 공유


Get-IseSnippet

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

구문

Default (기본값)

Get-IseSnippet

Description

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

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

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

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

예제

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

PS C:\> Get-ISESnippet

이 명령은 코드 조각 디렉터리의 모든 사용자 정의 코드 조각을 가져옵니다.

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

PS C:\> Invoke-Command -Computer (Get-Content Servers.txt) {Get-ISESnippet | Copy-Item -Destination \\Server01\Share01\Snippets}

이 명령은 사용자가 만든 모든 코드 조각을 원격 컴퓨터 그룹에서 공유 코드 조각 디렉터리로 복사합니다.

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

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

PS C:\> #Parse-Snippet Function

function Parse-Snippet
{
  $A = Get-ISESnippet
  $SnippetNamespace = @{x="https://schemas.microsoft.com/PowerShell/Snippets"}
  foreach ($SnippetFile in $A)
   {
     Write-Host ""
     $Title = Select-Xml -Path $SnippetFile.FullName -Namespace $SnippetNamespace -XPath "//x:Title" | foreach {$_.Node.InnerXML}
     $Text =  Select-Xml -Path $SnippetFile.FullName -Namespace $SnippetNamespace -XPath "//x:Script" | foreach {$_.Node.InnerText}
     Write-Host "Title: $Title"
     Write-Host "Text: $Text"
   }
}

# Sample Output

Title: Mandatory
Text:
Param
(
  [parameter(Mandatory=True)]
  [String[]]
  $<ParameterName>
)

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

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

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

PS C:\> $PSISE.CurrentPowerShellTab.Snippets | Format-Table DisplayTitle, Description

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

이 명령은 Windows PowerShell ISE 개체 모델을 사용합니다. $PSISE 변수는 Windows PowerShell ISE 호스트 프로그램을 나타냅니다. $PSISE 변수의 CurrentPowerShellTab 속성은 현재 세션을 나타냅니다. 코드 조각 속성은 현재 세션의 코드 조각을 나타냅니다.

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

또한 이 명령은 Format-Table cmdlet을 사용하여 테이블에 있는 코드 조각의 DisplayTitleDescription 속성을 표시합니다.

출력

FileInfo

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

참고

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

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

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