다음을 통해 공유


업데이트 가능한 도움말에 대하여

간단한 설명

PowerShell의 업데이트 가능한 도움말 시스템에 대해 설명합니다.

긴 설명

PowerShell은 PowerShell cmdlet 및 개념에 대한 가장 up-to최신 도움말 항목에 액세스하는 여러 가지 방법을 제공합니다.

PowerShell 3.0에서 도입된 Updatable 도움말 시스템은 명령줄에서 읽을 수 있도록 항상 로컬 컴퓨터에 최신 도움말 항목이 있는지 확인하도록 설계되었습니다. 도움말 파일을 쉽게 다운로드 및 설치하고 최신 도움말 파일을 사용할 수 있게 될 때마다 업데이트할 수 있습니다.

엔터프라이즈의 여러 컴퓨터와 인터넷에 액세스할 수 없는 컴퓨터에 대해 업데이트된 도움말을 제공하기 위해 업데이트 가능한 도움말을 사용하면 도움말 파일을 파일 시스템 디렉터리 또는 파일 공유로 다운로드한 다음 파일 공유에서 도움말 파일을 설치할 수 있습니다.

Windows PowerShell 4.0에서 HelpInfoUri 속성은 Windows PowerShell 원격 연결을 통해 보존되므로 원격 컴퓨터에 설치되어 있지만 반드시 로컬 컴퓨터에 설치되지 않은 경우에도 Save-Help 모듈이 작동할 수 있습니다. 인터넷에 액세스할 수 없는 컴퓨터에서 실행하고, 인터넷에 액세스할 수 있는 컴퓨터에서 Export-Clixml 개체를 가져온 다음, PSModuleInfo 개체에서 Save-Help 실행하여 PSModuleInfo 개체를 디스크 또는 이동식 미디어(예: USB 드라이브)에 저장할 수 있습니다. 저장된 도움말은 이동식 미디어를 사용하여 원격 연결이 끊긴 컴퓨터에 복사한 다음 Update-Help실행하여 설치할 수 있습니다. Save-Help 기능이 향상되어 네트워크 액세스 권한이 없는 컴퓨터에 도움말을 설치할 수 있습니다. 새 Save-Help 기능을 사용하는 방법에 대한 예제는 이 항목의 파일 공유 도움말을 업데이트하는 방법을 참조하세요.

업데이트 가능한 도움말은 컴퓨터에 도움말 파일이 없는 경우에도 cmdlet에 대한 최신 도움말 항목 및 기본 도움말에 대한 온라인 액세스를 지원합니다.

PowerShell에는 도움말 파일이 제공되지 않습니다. 업데이트할 수 있는 도움말 기능을 사용하여 기본적으로 PowerShell 및 모든 Windows 모듈에 포함된 모든 명령에 대한 도움말 파일을 설치할 수 있습니다.

Updatable Help cmdlet

  • Update-Help: 인터넷 또는 파일 공유에서 최신 도움말 파일을 다운로드하고 로컬 컴퓨터에 설치합니다.

  • Save-Help: 인터넷에서 최신 도움말 파일을 다운로드하고 파일 시스템 디렉터리 또는 파일 공유에 저장합니다. 컴퓨터에 도움말 파일을 설치하려면 Update-Help사용합니다.

  • Get-Help: 명령줄에 도움말 항목을 표시합니다. 컴퓨터의 도움말 파일에서 도움말을 가져옵니다. 도움말 파일이 없는 cmdlet 및 함수에 대해 자동으로 생성된 도움말을 표시합니다. 기본 인터넷 브라우저에서 cmdlet, 함수, 스크립트 및 워크플로에 대한 온라인 도움말 항목을 엽니다.

자동 생성된 도움말: 도움말 파일 없이 도움말

컴퓨터에 cmdlet, 함수 또는 워크플로에 대한 도움말 파일이 없는 경우 Get-Help cmdlet은 자동으로 생성된 도움말을 표시하고 도움말 파일을 다운로드하거나 온라인으로 읽어보라는 메시지를 표시합니다.

자동 생성된 도움말에는 구문과 별칭, 업데이트 가능한 도움말 cmdlet을 사용하고 온라인 도움말 항목에 액세스하는 방법을 설명하는 설명이 포함됩니다.

예를 들어 다음 명령은 Get-Culture cmdlet에 대한 기본 도움말을 가져옵니다. 컴퓨터에 도움말 파일이 없으면 출력에 Get-Help 표시가 표시됩니다.

Get-Help Get-Culture
NAME
    Get-Culture

SYNTAX
    Get-Culture [<CommonParameters>]

ALIASES
    None

REMARKS
    To get the latest Help content including descriptions and examples
    type: Update-Help.

모듈에 대한 도움말 파일

최신 도움말의 가장 작은 단위는 모듈에 대한 도움말입니다. 모듈 도움말에는 모듈의 모든 cmdlet, 함수, 워크플로, 공급자, 스크립트 및 개념에 대한 도움말이 포함됩니다. 현재 세션으로 가져오지 않더라도 컴퓨터에 설치된 모든 모듈에 대한 도움말을 업데이트할 수 있습니다.

전체 모듈에 대한 도움말을 업데이트할 수 있지만 개별 cmdlet에 대한 도움말은 업데이트할 수 없습니다.

특정 cmdlet이 포함된 모듈을 찾으려면 다음 명령 형식을 사용합니다.

(Get-Command <cmdlet-name>).ModuleName

예를 들어 Set-ExecutionPolicy cmdlet이 포함된 모듈을 찾으려면 다음을 입력합니다.

(Get-Command Set-ExecutionPolicy).ModuleName

특정 모듈에 대한 도움말을 업데이트하려면 다음을 입력합니다.

Update-Help -Module <ModuleName>

예를 들어 Set-ExecutionPolicy cmdlet이 포함된 모듈에 대한 도움말을 업데이트하려면 다음을 입력합니다.

Update-Help -Module Microsoft.PowerShell.Security

변경 가능한 도움말에 대한 사용 권한

디렉터리 $PSHOME/Modules모듈에 대한 도움말을 업데이트하려면 컴퓨터의 Administrators 그룹의 구성원이어야 합니다.

Administrators 그룹의 구성원이 아닌 경우 이러한 모듈에 대한 도움말을 업데이트할 수 없습니다. 하지만 인터넷에 액세스할 수 있는 경우 온라인에서 도움말을 볼 수 있습니다.

디렉터리 $HOME/Documents/PowerShell/Modules 또는 $HOME 디렉터리의 다른 하위 디렉터리에 있는 모듈의 모듈에 대한 도움말을 업데이트해도 특별한 권한이 필요하지 않습니다.

Update-HelpSave-Help cmdlet에는 현재 사용자의 명시적 자격 증명을 제공하는 UseDefaultCredentials 매개 변수가 있습니다. 이 매개 변수는 보안 인터넷 위치에 액세스하도록 설계되었습니다.

Update-HelpSave-Help cmdlet에는 원격 컴퓨터에서 명령을 실행하고 세 번째 컴퓨터의 파일 공유에 액세스할 수 있는 자격 증명 매개 변수도 있습니다. 자격 증명 매개 변수는 SourcePath 또는 Update-Help 매개 변수와 DestinationPath 또는 Save-Help 매개 변수를 사용하는 경우에만 유효합니다.

도움말 파일을 설치하고 업데이트하는 방법

처음으로 도움말 파일을 다운로드하여 설치하거나 컴퓨터에서 도움말 파일을 업데이트하려면 Update-Help cmdlet을 사용합니다.

Update-Help cmdlet은 다음 작업을 포함하여 모든 작업을 수행합니다.

  • Updatable 도움말을 지원하는 모듈을 결정합니다.
  • 각 모듈이 해당 Updatable 도움말 파일을 저장하는 인터넷 위치를 찾습니다.
  • 컴퓨터의 각 모듈에 대한 도움말 파일을 각 모듈에 사용할 수 있는 최신 도움말 파일과 비교합니다.
  • 인터넷에서 새 파일을 다운로드합니다.
  • 도움말 파일 패키지를 래프 해제합니다.
  • 파일이 유효한 도움말 파일임을 확인합니다.
  • 모듈 디렉터리의 언어별 하위 디렉터리에 도움말 파일을 설치합니다.

새 도움말 항목에 액세스하려면 Get-Help cmdlet을 사용합니다. PowerShell을 다시 시작할 필요가 없습니다.

업데이트 가능한 도움말을 지원하는 컴퓨터의 모든 모듈에 대한 도움말을 설치하거나 업데이트하려면 다음을 입력합니다.

Update-Help

특정 모듈에 대한 도움말을 업데이트하려면 Module 매개 변수를 Update-Help에 추가합니다. 와일드카드 문자는 모듈 이름에 허용됩니다.

예를 들어 ServerManager 모듈에 대한 도움말을 업데이트하려면 다음을 입력합니다.

Update-Help -Module ServerManager

매개 변수가 없으면 Update-Help은 세션 내 모든 모듈과 업데이트 가능한 도움말을 지원하는 설치된 모든 모듈의 도움말을 업데이트합니다. 포함하려면 PSModulePath 환경 변수 값에 나열된 디렉터리에 모듈을 설치해야 합니다. Get-Module -ListAvailable 명령에서 반환되는 모듈이기도 합니다.

Module 매개 변수 값이 *(모두)이면 Update-Help 업데이트 가능한 도움말을 지원하지 않는 모듈을 포함하여 설치된 모든 모듈에 대한 도움말을 업데이트하려고 시도합니다. 이 명령은 일반적으로 cmdlet에서 업데이트 가능한 도움말을 지원하지 않는 모듈을 발견할 때 많은 오류를 생성합니다.

파일 공유에서 도움말을 업데이트하는 방법

인터넷에 연결되지 않은 컴퓨터를 지원하거나 엔터프라이즈에서 도움말 업데이트를 제어하거나 간소화하려면 Save-Help cmdlet을 사용합니다. Save-Help cmdlet은 인터넷에서 도움말 파일을 다운로드하고 지정한 파일 시스템 디렉터리에 저장합니다.

Save-Help 지정된 디렉터리의 도움말 파일을 각 모듈에 사용할 수 있는 최신 도움말 파일과 비교합니다. 디렉터리에 도움말 파일이 없거나 모듈에 대한 최신 도움말 파일을 사용할 수 있는 경우 Save-Help cmdlet은 인터넷에서 새 파일을 다운로드합니다. 그러나 도움말 파일의 래이프를 해제하거나 설치하지는 않습니다.

파일 시스템 디렉터리에 저장된 도움말 파일에서 컴퓨터에 도움말 파일을 설치하거나 업데이트하려면 cmdlet의 Update-Help 매개 변수를 사용합니다. Update-Help cmdlet은 최신 도움말 파일을 식별하고, 래프 해제하고, 유효성을 검사하고, 모듈 디렉터리의 언어별 하위 디렉터리에 설치합니다.

예를 들어 설치된 모든 모듈에 대한 도움말을 \\Server\Share 디렉터리에 저장하려면 다음을 입력합니다.

Save-Help -DestinationPath \\Server\Share

그런 다음 \\Server\Share 디렉터리의 도움말을 업데이트하려면 다음을 입력합니다.

Update-Help -SourcePath \\Server\Share

다음 예제에서는 Save-Help 사용하여 로컬 컴퓨터에 설치되지 않은 모듈에 대한 도움말을 저장하는 방법을 보여 줍니다. 이 예제에서 관리자는 Save-Help 실행하여 로컬 컴퓨터에 DhcpServer 모듈 또는 DHCP 서버 역할을 설치하지 않고 인터넷에 연결된 클라이언트 컴퓨터에서 DhcpServer 모듈에 대한 도움말을 저장합니다.

옵션 1: Invoke-Command 실행하여 원격 모듈에 대한 PSModuleInfo 개체를 가져와 변수, $m저장한 다음, 변수 Save-Help 모듈 이름으로 지정하여 PSModuleInfo 개체에서 $m 실행합니다.

$invokeCommandSplat = @{
    ComputerName = 'RemoteServer'
    ScriptBlock = { Get-Module -Name DhcpServer -ListAvailable }
}
$m = Invoke-Command @invokeCommandSplat
Save-Help -Module $m -DestinationPath C:\SavedHelp

옵션 2: DHCP 서버 모듈을 실행하는 컴퓨터를 대상으로 하는 PSSession을 열고 모듈에 대한 PSModuleInfo 개체를 가져와 변수 $m저장한 다음 Save-Help 변수에 저장된 개체에서 $m 실행합니다.

$s = New-PSSession -ComputerName RemoteServer
$m = Get-Module -PSSession $s -Name DhcpServer -ListAvailable
Save-Help -Module $m -DestinationPath C:\SavedHelp

옵션 3: DHCP 서버 모듈을 실행하는 컴퓨터를 대상으로 하는 CIM 세션을 열어 모듈의 PSModuleInfo 개체를 가져와 변수 $m저장한 다음 Save-Help 변수에 저장된 개체에서 $m 실행합니다.

$c = New-CimSession -ComputerName RemoteServer
$m = Get-Module -CimSession $c -Name DhcpServer -ListAvailable
Save-Help -Module $m -DestinationPath C:\SavedHelp

다음 예제에서 관리자는 네트워크 액세스 권한이 없는 컴퓨터에 DHCP 서버 모듈에 대한 도움말을 설치합니다.

먼저 Export-Clixml 실행하여 PSModuleInfo 개체를 공유 폴더 또는 이동식 미디어로 내보냅니다.

$m = Get-Module -Name DhcpServer -ListAvailable
Export-Clixml -Path E:\UsbDrive\DhcpModule.xml -InputObject $m

그런 다음, 이동식 미디어를 인터넷에 액세스할 수 있는 컴퓨터로 전송한 다음 사용하여 Import-Clixml 개체를 가져옵니다. Save-Help 실행하여 가져온 DhcpServer 모듈 PSModuleInfo 개체에 대한 도움말을 저장합니다.

$deserialized_m = Import-Clixml E:\UsbDrive\DhcpModule.xml
Save-Help -Module $deserialized_m -DestinationPath E:\UsbDrive\SavedHelp

마지막으로, 이동식 미디어를 네트워크 액세스 권한이 없는 컴퓨터로 다시 전송한 다음 Update-Help실행하여 도움말을 설치합니다.

Update-Help -Module DhcpServer -SourcePath E:\UsbDrive\SavedHelp

매개 변수가 없으면 Save-Help 세션의 모든 모듈 및 업데이트 가능한 도움말을 지원하는 설치된 모든 모듈에 대한 도움말을 다운로드합니다. 모듈을 포함하려면 로컬 컴퓨터 또는 도움말을 저장할 원격 컴퓨터의 $Env:PSModulePath 환경 변수 값에 나열된 디렉터리에 모듈을 설치해야 합니다. Get-Help -ListAvailable 명령을 실행하여 반환되는 모듈이기도 합니다.

다른 언어로 도움말 파일을 업데이트하는 방법

기본적으로 Update-HelpSave-Help cmdlet은 로컬 컴퓨터에서 Windows용으로 설정된 UI 문화권 및 언어에 대한 도움말을 다운로드합니다. 지정된 모듈에 대한 도움말 파일을 로컬 UI 문화권에서 사용할 수 없는 경우 Update-HelpSave-Help Windows 언어 대체 규칙을 사용하여 지원되는 최상의 언어를 찾습니다.

그러나 Update-Help cmdlet의 Save-Help 매개 변수를 사용하여 사용 가능한 모든 UI 문화권에서 도움말 파일을 다운로드하고 설치할 수 있습니다.

예를 들어 세션의 모든 모듈에 대한 최신 도움말 파일을 일본어(ja-JP) 및 프랑스어(fr-FR)로 저장하려면 다음을 입력합니다.

Save-Help -Path \Server\Share -UICulture ja-JP, fr-FR

모듈에 대한 도움말 파일을 지정한 언어로 사용할 수 없는 경우 Update-HelpSave-Help cmdlet은 각 모듈에 대한 도움말을 사용할 수 있는 언어를 나열하는 오류 메시지를 반환하므로 요구에 가장 적합한 대안을 선택할 수 있습니다.

메모

현재 업데이트 가능한 도움말 콘텐츠는 영어로만 게시됩니다(en-US).

온라인 도움말을 사용하는 방법

로컬 컴퓨터에서 도움말 파일을 업데이트할 수 없거나 업데이트하지 않을 경우 최신 도움말 파일을 온라인으로 가져올 수 있습니다.

cmdlet 또는 함수에 대한 온라인 도움말 항목을 열려면 cmdlet의 Get-Help 매개 변수를 사용합니다.

예를 들어 다음 명령은 기본 인터넷 브라우저에서 Get-Job cmdlet에 대한 온라인 도움말 항목을 엽니다.

Get-Help Get-Job -Online

스크립트에 대한 온라인 도움말을 보려면 Online 매개 변수와 스크립트의 전체 경로를 사용합니다.

Online 매개 변수는 About 항목에서 작동하지 않습니다. PowerShell 언어에 대한 도움말 항목을 포함하여 PowerShell에 대한 정보 항목을 보려면 PowerShell 정보 항목참조하세요.

인터넷 다운로드를 최소화하거나 방지하는 방법

인터넷 다운로드를 최소화하고 인터넷에 연결되지 않은 사용자에게 업데이트 가능한 도움말을 제공하려면 Save-Help cmdlet을 사용합니다. 인터넷에서 도움말을 다운로드하고 네트워크 공유에 저장합니다. 그런 다음 모든 컴퓨터에서 Update-Help 명령을 실행하는 그룹 정책 설정 또는 예약된 작업을 만듭니다. cmdlet의 Update-Help 매개 변수 값을 네트워크 공유로 설정합니다.

인터넷 액세스 권한이 있는 사용자가 인터넷에서 업데이트 가능한 도움말을 다운로드하지 못하도록 하려면 Update-Help 그룹 정책 설정에 대한 기본 원본 경로 설정을 사용합니다.

이 그룹 정책 설정은 영향을 받는 모든 컴퓨터의 모든 명령에 지정한 파일 시스템 위치와 함께 Update-Help 매개 변수를 암시적으로 추가합니다. 사용자는 SourcePath 매개 변수를 명시적으로 사용하여 다른 파일 시스템 위치를 지정할 수 있지만 SourcePath 매개 변수를 제외하고 인터넷에서 도움말을 다운로드할 수는 없습니다.

메모

Update-Help 그룹 정책의 기본 원본 경로 설정은 컴퓨터 구성사용자 구성에 위치합니다. 그러나 컴퓨터 구성 정책 설정만 유효합니다. 사용자 구성 아래의 정책 설정은 무시됩니다.

자세한 내용은 about_Group_Policy_Settings참조하세요.

비표준 모듈에 대한 도움말을 업데이트하는 방법

cmdlet의 Get-Module 매개 변수에서 반환되지 않는 모듈에 대한 도움말을 업데이트하거나 저장하려면 Update-Help 또는 Save-Help 명령을 실행하기 전에 모듈을 현재 세션으로 가져옵니다. 원격 컴퓨터에서 명령을 실행 Save-Help 하기 전에 모듈을 원격 컴퓨터에 연결된 현재 세션 또는 Invoke-Command scriptblock으로 가져옵니다.

모듈이 현재 세션에 있는 경우 매개 변수 없이 Update-Help 또는 Save-Help cmdlet을 실행하거나 Module 매개 변수를 사용하여 모듈 이름을 지정합니다.

모듈Update-HelpSave-Help cmdlet의 매개 변수는 모듈 이름만 허용합니다. 모듈 파일의 경로는 허용하지 않습니다.

이 기술을 사용하여 cmdlet의 Get-Module 매개 변수에서 반환되지 않는 모듈(예: $Env:PSModulePath 환경 변수에 나열되지 않은 위치에 설치된 모듈 또는 잘못된 형식의 모듈)에 대한 도움말을 업데이트하거나 저장합니다(모듈 디렉터리에는 기본 이름이 디렉터리 이름과 동일한 파일이 하나 이상 포함되지 않음).

Updatable 도움말을 지원하는 방법

모듈을 작성하는 경우 모듈에 대한 온라인 도움말 및 업데이트 가능한 도움말을 지원할 수 있습니다. 자세한 내용은 업데이트할 수 있는 도움말 지원 및 온라인 도움말 지원 을 참조하세요.

PowerShell 스냅인이나 주석 기반 도움말에 대한 업데이트 가능한 도움말은 사용할 수 없습니다.

비고

Update-HelpSave-Help cmdlet은 Windows PE(Windows 사전 설치 환경)에서 지원되지 않습니다.

참고하십시오