New-PSSessionConfigurationFile
세션 구성을 정의하는 파일을 만듭니다.
Syntax
New-PSSessionConfigurationFile
[-Path] <String>
[-SchemaVersion <Version>]
[-Guid <Guid>]
[-Author <String>]
[-CompanyName <String>]
[-Copyright <String>]
[-Description <String>]
[-PowerShellVersion <Version>]
[-SessionType <SessionType>]
[-ModulesToImport <Object[]>]
[-AssembliesToLoad <String[]>]
[-VisibleAliases <String[]>]
[-VisibleCmdlets <String[]>]
[-VisibleFunctions <String[]>]
[-VisibleProviders <String[]>]
[-AliasDefinitions <Hashtable[]>]
[-FunctionDefinitions <Hashtable[]>]
[-VariableDefinitions <Object>]
[-EnvironmentVariables <Object>]
[-TypesToProcess <String[]>]
[-FormatsToProcess <String[]>]
[-LanguageMode <PSLanguageMode>]
[-ExecutionPolicy <ExecutionPolicy>]
[-ScriptsToProcess <String[]>]
[<CommonParameters>]
Description
cmdlet은 New-PSSessionConfigurationFile
세션 구성을 사용하여 만든 세션의 환경 및 세션 구성을 정의하는 설정 파일을 만듭니다.
세션 구성에서 파일을 사용하려면 또는 Set-PSSessionConfiguration
cmdlet의 Path 매개 변수를 Register-PSSessionConfiguration
사용합니다.
만드는 세션 구성 파일 New-PSSessionConfigurationFile
은 세션 구성 속성 및 값의 해시 테이블을 포함하는 사람이 읽을 수 있는 텍스트 파일입니다. 파일에 파일 .pssc
이름 확장명 이 있습니다.
Path 매개 변수를 제외한 의 New-PSSessionConfigurationFile
모든 매개 변수는 선택 사항입니다.
매개 변수를 생략하면 매개 변수 설명에 표시된 경우를 제외하고 세션 구성 파일의 해당 키가 주석으로 처리됩니다.
엔드포인트라고도 하는 세션 구성은 컴퓨터에 연결하는 PowerShell 세션(PSSessions)에 대한 환경을 정의하는 로컬 컴퓨터의 설정 컬렉션입니다. 모든 PSSessions는 세션 구성을 사용합니다. 특정 세션 구성을 지정하려면 cmdlet과 같은 세션을 만드는 cmdlet의 ConfigurationName 매개 변수를 New-PSSession
사용합니다.
session configuration file을 사용하면 복잡한 스크립트나 코드 어셈블리 없이 세션 구성을 쉽게 정의할 수 있습니다. 파일의 설정은 선택적 시작 스크립트 및 세션 구성의 모든 어셈블리와 함께 사용됩니다.
세션 구성 및 세션 구성 파일에 대한 자세한 내용은 about_Session_Configurations 및 about_Session_Configuration_Files.
이 cmdlet은 PowerShell 3.0에서 도입되었습니다.
예제
예제 1: NoLanguage 세션 만들기 및 사용
이 예제에서는 언어가 없는 세션을 만드는 방법과 사용의 효과를 보여 줍니다.
단계는 다음과 같습니다.
- 새 구성 파일을 Create.
- 구성을 등록합니다.
- 구성을 사용하는 새 세션을 Create.
- 새 세션에서 명령을 실행합니다.
이 예제에서 명령을 실행하려면 관리자 권한으로 실행 옵션을 사용하여 PowerShell을 시작합니다. cmdlet을 실행 Register-PSSessionConfiguration
하려면 이 옵션이 필요합니다.
New-PSSessionConfigurationFile -Path .\NoLanguage.pssc -LanguageMode NoLanguage
Register-PSSessionConfiguration -Path .\NoLanguage.pssc -Name NoLanguage -Force
$NoLanguage = New-PSSession -ComputerName Srv01 -ConfigurationName NoLanguage
Invoke-Command -Session $NoLanguage -ScriptBlock { if ((Get-Date) -lt '1January2099') {'Before'} else {'After'} }
The syntax is not supported by this runspace. This might be because it is in no-language mode.
+ CategoryInfo : ParserError: (if ((Get-Date) ...') {'Before'} :String) [], ParseException
+ FullyQualifiedErrorId : ScriptsNotAllowed
+ PSComputerName : localhost
이 예제에서는 LanguageMode가 Invoke-Command
NoLanguage로 설정되어 있으므로 가 실패합니다.
예제 2: RestrictedLanguage 세션 만들기 및 사용
이 예제에서는 언어가 없는 세션을 만드는 방법과 사용의 효과를 보여 줍니다.
단계는 다음과 같습니다.
- 새 구성 파일을 Create.
- 구성을 등록합니다.
- 구성을 사용하는 새 세션을 Create.
- 새 세션에서 명령을 실행합니다.
이 예제에서 명령을 실행하려면 관리자 권한으로 실행 옵션을 사용하여 PowerShell을 시작합니다. cmdlet을 실행 Register-PSSessionConfiguration
하려면 이 옵션이 필요합니다.
New-PSSessionConfigurationFile -Path .\NoLanguage.pssc -LanguageMode RestrictedLanguage
Register-PSSessionConfiguration -Path .\NoLanguage.pssc -Name RestrictedLanguage -Force
$NoLanguage = New-PSSession -ComputerName Srv01 -ConfigurationName RestrictedLanguage
Invoke-Command -Session $NoLanguage -ScriptBlock { if ((Get-Date) -lt '1January2099') {'Before'} else {'After'} }
Before
이 예제에서는 Invoke-Command
LanguageMode 가 RestrictedLanguage로 설정되었기 때문에 가 성공합니다.
예제 3: 세션 구성 파일 변경
이 예제에서는 "ITTasks"라는 기존 세션에서 사용되는 세션 구성 파일을 변경하는 방법을 보여 줍니다. 이전에는 이러한 세션에 핵심 모듈과 내부 ITTasks 모듈만 있었습니다. 관리자는 ITTasks 세션 구성을 사용하여 만든 세션에 PSScheduledJob 모듈을 추가하려고 합니다.
New-PSSessionConfigurationFile -Path .\New-ITTasks.pssc -ModulesToImport Microsoft*, ITTasks, PSScheduledJob
Set-PSSessionConfiguration -Name ITTasks -Path .\New-ITTasks.pssc
New-PSSessionConfigurationFile
필요한 모듈을 가져오는 세션 구성 파일을 만드는 cmdlet입니다. cmdlet은 Set-PSSessionConfiguration
현재 구성 파일을 새 구성 파일로 바꿉니다. 이 새 구성은 변경 후에 만든 새 세션에만 영향을 줍니다.
기존 "ITTasks" 세션은 영향을 받지 않습니다.
예제 4: 세션 구성 파일 편집
이 예제에서는 구성 파일의 활성 세션 구성 사본을 편집하여 세션 구성을 변경하는 방법을 보여 줍니다. 구성 파일의 세션 구성 복사본을 수정하려면 파일에 대한 모든 권한이 있어야 합니다. 이렇게 하려면 파일에 대한 권한을 변경해야 할 수 있습니다.
이 시나리오에서는 활성 구성 파일을 편집하여 cmdlet에 Select-String
대한 새 별칭을 추가하려고 합니다.
아래 예제 코드는 다음 단계를 수행하여 이 변경을 수행합니다.
- ITConfig 세션에 대한 구성 파일 경로를 가져옵니다.
- 사용자는 Notepad.exe 사용하여 구성 파일을 편집하여 다음과 같이 AliasDefinitions 값을 변경합니다
AliasDefinitions = @(@{Name='slst';Value='Select-String'})
. - 업데이트된 구성 파일을 테스트합니다.
$ITConfig = Get-PSSessionConfiguration -Name ITConfig
notepad.exe $ITConfig.ConfigFilePath
Test-PSSessionConfigurationFile -Path $ITConfig.ConfigFilePath
True
Verbose 매개 변수를 와 함께 Test-PSSessionConfigurationFile
사용하여 검색된 오류를 표시합니다. 파일에서 오류가 검색되지 않으면 cmdlet이 를 반환 $True
합니다.
예제 5: 샘플 구성 파일 Create
이 예제에서는 모든 cmdlet 매개 변수를 사용하는 명령을 보여줍니다 New-PSSessionConfigurationFile
.
이 명령은 각 매개 변수의 올바른 입력 형식을 보여 주기 위해 포함되었습니다.
결과 SampleFile.pssc가 출력에 표시됩니다.
$configSettings = @{
Path = '.\SampleFile.pssc'
SchemaVersion = '1.0.0.0'
Author = 'User01'
Copyright = '(c) Fabrikam Corporation. All rights reserved.'
CompanyName = 'Fabrikam Corporation'
Description = 'This is a sample file.'
ExecutionPolicy = 'AllSigned'
PowerShellVersion = '3.0'
LanguageMode = 'FullLanguage'
SessionType = 'Default'
EnvironmentVariables = @{TESTSHARE='\\Test2\Test'}
ModulesToImport = @{ModuleName='PSScheduledJob'; ModuleVersion='1.0.0.0'; GUID='50cdb55f-5ab7-489f-9e94-4ec21ff51e59'},'PSDiagnostics'
AssembliesToLoad = 'System.Web.Services','FSharp.Compiler.CodeDom.dll'
TypesToProcess = 'Types1.ps1xml','Types2.ps1xml'
FormatsToProcess = 'CustomFormats.ps1xml'
ScriptsToProcess = 'Get-Inputs.ps1'
AliasDefinitions = @{Name='hlp';Value='Get-Help';Description='Gets help.';Options='AllScope'},@{Name='Update';Value='Update-Help';Description='Updates help';Options='ReadOnly'}
FunctionDefinitions = @{Name='Get-Function';ScriptBlock={Get-Command -CommandType Function};Options='ReadOnly'}
VariableDefinitions = @{Name='WarningPreference';Value='SilentlyContinue'}
VisibleAliases = 'c*','g*','i*','s*'
VisibleCmdlets = 'Get*'
VisibleFunctions = 'Get*'
VisibleProviders = 'FileSystem','Function','Variable'
}
New-PSSessionConfigurationFile @configSettings
Get-Content SampleFile.pssc
@{
# Version number of the schema used for this configuration file
SchemaVersion = '1.0.0.0'
# ID used to uniquely identify this session configuration
GUID = 'f7039ffa-7e54-4382-b358-a393c75c30d3'
# Specifies the execution policy for this session configuration
ExecutionPolicy = 'AllSigned'
# Specifies the language mode for this session configuration
LanguageMode = 'FullLanguage'
# Initial state of this session configuration
SessionType = 'Default'
# Environment variables defined in this session configuration
EnvironmentVariables = @{
TESTSHARE='\\Test2\Test'
}
# Author of this session configuration
Author = 'User01'
# Company associated with this session configuration
CompanyName = 'Fabrikam Corporation'
# Copyright statement for this session configuration
Copyright = '(c) Fabrikam Corporation. All rights reserved.'
# Description of the functionality provided by this session configuration
Description = 'This is a sample file.'
# Version of the PowerShell engine used by this session configuration
PowerShellVersion = '3.0'
# Modules that will be imported
ModulesToImport = @{
ModuleVersion='1.0.0.0'
ModuleName='PSScheduledJob'
GUID='50cdb55f-5ab7-489f-9e94-4ec21ff51e59'
}, 'PSDiagnostics'
# Assemblies that will be loaded in this session configuration
AssembliesToLoad = 'System.Web.Services', 'FSharp.Compiler.CodeDom.dll'
# Aliases visible in this session configuration
VisibleAliases = 'c*', 'g*', 'i*', 's*'
# Cmdlets visible in this session configuration
VisibleCmdlets = 'Get*'
# Functions visible in this session configuration
VisibleFunctions = 'Get*'
# Providers visible in this session configuration
VisibleProviders = 'FileSystem', 'Function', 'Variable'
# Aliases defined in this session configuration
AliasDefinitions = @(
@{
Description='Gets help.'
Name='hlp'
Options='AllScope'
Value='Get-Help'
},
@{
Description='Updates help'
Name='Update'
Options='ReadOnly'
Value='Update-Help'
}
)
# Functions defined in this session configuration
FunctionDefinitions = @(
@{
Name='Get-Function'
Options='ReadOnly'
ScriptBlock={Get-Command -CommandType Function}
}
)
# Variables defined in this session configuration
VariableDefinitions = @(
@{
Value='SilentlyContinue'
Name='WarningPreference'
# Type files (.ps1xml) that will be loaded in this session configuration
TypesToProcess = 'C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\Types1.ps1xml', 'C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\Types2.ps1xml'
# Format files (.ps1xml) that will be loaded in this session configuration
FormatsToProcess = 'C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\CustomFormats.ps1xml'
# Specifies the scripts to execute after the session is configured
ScriptsToProcess = 'C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\Get-Inputs.ps1'
}
이 예제에서는 모든 cmdlet 매개 변수를 사용하는 New-PSSessionConfigurationFile 명령을 표시합니다. 이 명령은 각 매개 변수의 올바른 입력 형식을 보여 주기 위해 포함되었습니다.
결과 SampleFile.pssc가 출력에 표시됩니다.
매개 변수
-AliasDefinitions
세션 구성을 사용하는 세션에 지정된 별칭을 추가합니다. 다음 키를 사용하여 해시 테이블을 입력합니다.
- 이름 - 별칭의 이름입니다. 이 키는 필수입니다.
- 값 - 별칭이 나타내는 명령입니다. 이 키는 필수입니다.
- 설명 - 별칭을 설명하는 텍스트 문자열입니다. 이 키는 선택 사항입니다.
- 옵션 - 별칭 옵션입니다. 이 키는 선택 사항입니다. 기본값은 없음입니다. 이 매개 변수에 허용되는 값은 None, ReadOnly, Constant, Private 또는 AllScope입니다.
예: @{Name='hlp';Value='Get-Help';Description='Gets help';Options='ReadOnly'}
Type: | Hashtable[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AssembliesToLoad
세션 구성을 사용하는 세션에 로드할 어셈블리를 지정합니다.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Author
세션 구성 또는 구성 파일의 작성자를 지정합니다. 기본값은 현재 사용자입니다. 이 매개 변수 값은 세션 구성 파일에 표시되지만 세션 구성 개체의 속성이 아닙니다.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CompanyName
세션 구성 또는 구성 파일을 만든 회사를 지정합니다. 기본값은 알 수 없음입니다. 이 매개 변수 값은 세션 구성 파일에 표시되지만 세션 구성 개체의 속성이 아닙니다.
Type: | String |
Position: | Named |
Default value: | Unknown |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Copyright
세션 구성 파일의 저작권을 지정합니다. 이 매개 변수 값은 세션 구성 파일에 표시되지만 세션 구성 개체의 속성이 아닙니다.
이 매개 변수를 생략하면 Author 매개 변수 New-PSSessionConfigurationFile
의 값을 사용하여 copyright 문을 생성합니다.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Description
세션 구성 또는 세션 구성 파일에 대한 설명을 지정합니다. 이 매개 변수 값은 세션 구성 파일에 표시되지만 세션 구성 개체의 속성이 아닙니다.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-EnvironmentVariables
세션에 환경 변수를 추가합니다. 키가 환경 변수 이름이고 값이 환경 변수 값인 해시 테이블을 입력합니다.
예: EnvironmentVariables=@{TestShare='\\Server01\TestShare'}
Type: | Object |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ExecutionPolicy
세션 구성을 사용하는 세션의 실행 정책을 지정합니다. 이 매개 변수를 생략하면 세션 구성 파일의 ExecutionPolicy 키 값이 제한됩니다. PowerShell의 실행 정책에 대한 자세한 내용은 about_Execution_Policies 참조하세요.
Type: | ExecutionPolicy |
Accepted values: | Unrestricted, RemoteSigned, AllSigned, Restricted, Default, Bypass, Undefined |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FormatsToProcess
세션 구성을 사용하는 세션에서 실행되는 형식 지정 파일(.ps1xml)을 지정합니다. 이 매개 변수의 값은 서식 파일의 전체 또는 절대 경로여야 합니다.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FunctionDefinitions
세션 구성을 사용하는 세션에 지정된 함수를 추가합니다. 다음 키를 사용하여 해시 테이블을 입력합니다.
- 이름 - 함수의 이름입니다. 이 키는 필수입니다.
- ScriptBlock - 함수 본문입니다. 스크립트 블록을 입력합니다. 이 키는 필수입니다.
- 옵션 - 함수 옵션입니다. 이 키는 선택 사항입니다. 기본값은 없음입니다. 이 매개 변수에 허용되는 값은 None, ReadOnly, Constant, Private 또는 AllScope입니다.
예: @{Name='Get-PowerShellProcess';ScriptBlock={Get-Process PowerShell};Options='AllScope'}
Type: | Hashtable[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Guid
세션 구성 파일의 고유 식별자를 지정합니다. 이 매개 변수 New-PSSessionConfigurationFile
를 생략하면 는 파일에 대한 GUID를 생성합니다. PowerShell에서 새 GUID를 만들려면 를 입력합니다 New-Guid
.
Type: | Guid |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-LanguageMode
이 세션 구성을 사용하는 세션에서 허용되는 PowerShell 언어의 요소를 결정합니다. 이 매개 변수를 사용하여 특정 사용자가 컴퓨터에서 실행할 수 있는 명령을 제한할 수 있습니다.
이 매개 변수에 허용되는 값은 다음과 같습니다.
- FullLanguage - 모든 언어 요소가 허용됩니다.
- ConstrainedLanguage - 평가할 스크립트가 포함된 명령은 허용되지 않습니다. ConstrainedLanguage 모드는 Microsoft .NET Framework 형식, 개체 또는 메서드에 대한 사용자 액세스를 제한합니다.
- NoLanguage - 사용자는 cmdlet 및 함수를 실행할 수 있지만 스크립트 블록, 변수 또는 연산자와 같은 언어 요소는 사용할 수 없습니다.
- RestrictedLanguage - 사용자가 cmdlet 및 함수를 실행할 수 있지만 , ,
$PSUICulture
,$False
$True
및$Null
와 같이 허용되는 변수를 제외하고는 스크립트 블록 또는 변수를$PSCulture
사용할 수 없습니다. 사용자는 기본 비교 연산자(-eq
, ,-gt
-lt
)만 사용할 수 있습니다. 대입문, 속성 참조 및 메서드 호출은 허용되지 않습니다.
LanguageMode 매개 변수의 기본값은 SessionType 매개 변수 값에 따라 달라집니다.
- 비어 있음 - NoLanguage
- RestrictedRemoteServer - NoLanguage
- 기본값 - FullLanguage
Type: | PSLanguageMode |
Accepted values: | FullLanguage, RestrictedLanguage, NoLanguage, ConstrainedLanguage |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ModulesToImport
세션 구성을 사용하는 세션에 자동으로 가져오는 모듈 및 스냅인을 지정합니다.
기본적으로 Microsoft.PowerShell.Core 스냅인만 원격 세션으로 가져오지만 cmdlet이 제외되지 않는 한 사용자는 및 Add-PSSnapin
cmdlet을 사용하여 Import-Module
모듈 및 스냅인을 세션에 추가할 수 있습니다.
이 매개 변수 값의 각 모듈이나 스냅인을 문자열 또는 해시 테이블로 나타낼 수 있습니다. 모듈 문자열은 모듈 또는 스냅인의 이름으로만 구성됩니다. 모듈 해시 테이블에는 ModuleName, ModuleVersion 및 GUID 키가 포함될 수 있습니다. ModuleName 키만 필수입니다.
예를 들어 다음 값은 문자열과 해시 테이블로 구성됩니다. 순서와 관계없이 문자열과 해시 테이블의 모든 조합이 유효합니다.
'TroubleshootingPack', @{ModuleName='PSDiagnostics'; ModuleVersion='1.0.0.0';GUID='c61d6278-02a3-4618-ae37-a524d40a7f44'}
cmdlet의 ModulesToImport 매개 변수 Register-PSSessionConfiguration
값이 세션 구성 파일의 ModulesToImport 키 값보다 우선합니다.
Type: | Object[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
세션 구성 파일의 경로 및 파일 이름을 지정합니다. 파일에 파일 이름 확장명이 .pssc
있어야 합니다.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PowerShellVersion
세션 구성을 사용하는 세션에서 PowerShell 엔진의 버전을 지정합니다. 이 매개 변수에 허용되는 값은 2.0 및 3.0입니다. 이 매개 변수를 생략하면 PowerShellVersion 키가 주석 처리되고 최신 버전의 PowerShell이 세션에서 실행됩니다.
cmdlet의 PSVersion 매개 변수 Register-PSSessionConfiguration
값이 세션 구성 파일의 PowerShellVersion 키 값보다 우선합니다.
Type: | Version |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SchemaVersion
세션 구성 파일 스키마의 버전을 지정합니다. 기본값은 "1.0.0.0"입니다.
Type: | Version |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ScriptsToProcess
세션 구성을 사용하는 세션에 지정된 스크립트를 추가합니다. 스크립트의 경로와 파일 이름을 입력합니다. 이 매개 변수의 값은 스크립트 파일 이름의 전체 또는 절대 경로여야 합니다.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SessionType
세션 구성을 사용하여 만들어진 세션의 유형을 지정합니다. 기본값은 Default입니다. 이 매개 변수에 허용되는 값은 다음과 같습니다.
- 비어 있음 - 기본적으로 세션에 추가되는 모듈이 없습니다. 이 cmdlet의 매개 변수를 사용하여 모듈, 함수, 스크립트 및 기타 기능을 세션에 추가할 수 있습니다. 이 옵션은 선택한 명령을 추가하여 사용자 지정 세션을 만들도록 설계되었습니다. 빈 세션에 명령을 추가하지 않을 경우 세션이 식으로 제한되며 세션을 사용하지 못할 수도 있습니다.
- 기본값 - 세션에 Microsoft.PowerShell.Core 모듈을 추가합니다. 이 모듈에는 이 cmdlet을 명시적으로 금지하지 않는 한 사용자가 다른 모듈을 가져오는 데 사용할 수 있는 cmdlet이 포함되어
Import-Module
있습니다. - RestrictedRemoteServer. , ,
Get-Help
Get-Command
Get-FormatData
Measure-Object
Out-Default
및Select-Object
프록시 함수Exit-PSSession
만 포함합니다. 이 cmdlet의 매개 변수를 사용하여 모듈, 함수, 스크립트 및 기타 기능을 세션에 추가할 수 있습니다.
Type: | SessionType |
Accepted values: | Empty, RestrictedRemoteServer, Default |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TypesToProcess
세션 구성을 사용하는 세션에 지정된 .ps1xml
형식 파일을 추가합니다. 파일 이름 형식을 입력합니다. 이 매개 변수의 값은 파일 이름 형식의 전체 또는 절대 경로여야 합니다.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VariableDefinitions
세션 구성을 사용하는 세션에 지정된 변수를 추가합니다. 다음 키를 사용하여 해시 테이블을 입력합니다.
- 이름 - 변수의 이름입니다. 이 키는 필수입니다.
- 값 - 변수 값입니다. 이 키는 필수입니다.
- 옵션 - 변수 옵션입니다. 이 키는 선택 사항입니다. 기본값은 없음입니다. 이 매개 변수에 허용되는 값은 None, ReadOnly, Constant, Private 또는 AllScope입니다.
예: @{Name='WarningPreference';Value='SilentlyContinue';Options='AllScope'}
Type: | Object |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VisibleAliases
세션의 별칭을 이 매개 변수 값에 지정된 별칭 및 AliasDefinition 매개 변수에 정의한 별칭으로 제한합니다. 와일드카드 문자가 지원됩니다. 기본적으로 PowerShell 엔진에서 정의한 모든 별칭과 모듈이 내보내는 모든 별칭이 세션에 표시됩니다.
예: VisibleAliases='gcm', 'gp'
Visible 매개 변수가 세션 구성 파일에 포함되면 PowerShell은 세션에서 cmdlet 및 해당 ipmo 별칭을 제거 Import-Module
합니다.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-VisibleCmdlets
세션의 cmdlet을 이 매개 변수 값에 지정된 cmdlet으로 제한합니다. 와일드카드 문자 및 모듈 정규화된 이름이 지원됩니다.
기본적으로 세션의 모듈에서 내보낸 모든 cmdlet이 세션에 표시됩니다. SessionType 및 ModulesToImport 매개 변수를 사용하여 세션으로 가져올 모듈과 스냅인을 결정할 수 있습니다. ModulesToImport에 cmdlet을 노출하는 모듈이 없으면 적절한 모듈이 자동으로 로드됩니다.
Visible 매개 변수가 세션 구성 파일에 포함되면 PowerShell은 세션에서 cmdlet 및 해당 ipmo 별칭을 제거 Import-Module
합니다.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-VisibleFunctions
세션의 함수를 이 매개 변수 값에 지정된 함수 및 FunctionDefinition 매개 변수에 정의한 함수로 제한합니다. 와일드카드 문자가 지원됩니다.
기본적으로 세션의 모듈에서 내보낸 모든 함수가 세션에 표시됩니다. SessionType 및 ModulesToImport 매개 변수를 사용하여 세션으로 가져올 모듈과 스냅인을 결정할 수 있습니다.
Visible 매개 변수가 세션 구성 파일에 포함되면 PowerShell은 세션에서 cmdlet 및 해당 ipmo 별칭을 제거 Import-Module
합니다.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-VisibleProviders
세션의 PowerShell 공급자를 이 매개 변수 값에 지정된 공급자로 제한합니다. 와일드카드 문자가 지원됩니다.
기본적으로 세션의 모듈에서 내보낸 모든 공급자가 세션에 표시됩니다. SessionType 및 ModulesToImport 매개 변수를 사용하여 세션으로 가져올 모듈을 결정합니다.
Visible 매개 변수가 세션 구성 파일에 포함되면 PowerShell은 세션에서 cmdlet 및 해당 별칭을 ipmo
제거 Import-Module
합니다.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
입력
None
이 cmdlet에 개체를 파이프할 수 없습니다.
출력
None
이 cmdlet은 어떠한 출력도 생성하지 않습니다.
참고
VisibleCmdlet 및VisibleProviders와 같은 매개 변수는 세션으로 항목을 가져오지 않습니다. 대신, 세션으로 가져온 항목 중에서 선택합니다. 예를 들어 VisibleProviders 매개 변수의 값이 인증서 공급자이지만 ModulesToImport 매개 변수가 인증서 공급자를 포함하는 Microsoft.PowerShell.Security 모듈을 지정하지 않으면 인증서 공급자가 세션에 표시되지 않습니다.
New-PSSessionConfigurationFile
는 Path 매개 변수에 지정한 경로에 .pssc 파일 이름 확장명을 가진 세션 구성 파일을 만듭니다. 세션 구성 파일을 사용하여 세션 구성을 만들 때 cmdlet은Register-PSSessionConfiguration
구성 파일을 복사하고 파일의 활성 복사본을 디렉터리의 SessionConfig 하위 디렉터리에$PSHOME
저장합니다.세션 구성의 ConfigFilePath 속성에는 활성 세션 구성 파일의 정규화된 경로가 포함됩니다. 언제든지 텍스트 편집기를 사용하여 디렉터리의 활성 구성 파일을
$PSHOME
수정할 수 있습니다. 변경 내용은 세션 구성을 사용하는 모든 새 세션에 영향을 주지만 기존 세션에는 영향을 주지 않습니다.편집된 세션 구성 파일을 사용하기 전에 cmdlet을
Test-PSSessionConfigurationFile
사용하여 구성 파일 항목이 유효한지 확인합니다.