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을 사용하여 테이블에 있는 코드 조각의 DisplayTitle 및 Description 속성을 표시합니다.
출력
FileInfo
이 cmdlet은 코드 조각 파일을 나타내는 파일 개체를 반환합니다.
참고
New-IseSnippet cmdlet은 서명되지 않은 .ps1xml 파일에 사용자가 만든 새 코드 조각을 저장합니다. 따라서 Windows PowerShell은 실행 정책이 AllSigned
또는 제한된 세션에 추가할 수 없습니다. 제한된 또는 AllSigned 세션에서 서명되지 않은 사용자가 만든 코드 조각을 만들고 가져오고 가져올 수 있지만 세션에서 사용할 수는 없습니다. Get-IseSnippet cmdlet이 반환하는 서명되지 않은 사용자 생성 코드 조각을 사용하려면 실행 정책을 변경한 다음 Windows PowerShell ISE를 다시 시작합니다.
Windows PowerShell 실행 정책에 대한 자세한 내용은 about_Execution_Policies 참조하세요.