다음을 통해 공유


Disconnect-PSSession

세션에서 연결을 끊습니다.

구문

Disconnect-PSSession
          [-Session] <PSSession[]>
          [-IdleTimeoutSec <Int32>]
          [-OutputBufferingMode <OutputBufferingMode>]
          [-ThrottleLimit <Int32>]
          [-WhatIf]
          [-Confirm]
          [<CommonParameters>]
Disconnect-PSSession
          [-IdleTimeoutSec <Int32>]
          [-OutputBufferingMode <OutputBufferingMode>]
          [-ThrottleLimit <Int32>]
          -Name <String[]>
          [-WhatIf]
          [-Confirm]
          [<CommonParameters>]
Disconnect-PSSession
          [-IdleTimeoutSec <Int32>]
          [-OutputBufferingMode <OutputBufferingMode>]
          [-ThrottleLimit <Int32>]
          -InstanceId <Guid[]>
          [-WhatIf]
          [-Confirm]
          [<CommonParameters>]
Disconnect-PSSession
          [-IdleTimeoutSec <Int32>]
          [-OutputBufferingMode <OutputBufferingMode>]
          [-ThrottleLimit <Int32>]
          [-Id] <Int32[]>
          [-WhatIf]
          [-Confirm]
          [<CommonParameters>]

Description

이 cmdlet은 Windows 플랫폼에서만 사용할 수 있습니다.

이 cmdlet은 Disconnect-PSSession 현재 세션에서 cmdlet을 사용하여 New-PSSession 시작한 것과 같은 PowerShell 세션(PSSession)의 연결을 끊습니다. 결과적으로 PSSession 은 연결이 끊어진 상태입니다. 현재 세션 또는 로컬 컴퓨터 또는 다른 컴퓨터의 다른 세션에서 연결이 끊긴 PSSession 에 연결할 수 있습니다.

cmdlet은 Disconnect-PSSession 현재 세션에 연결된 열린 PSSessions 만 연결을 끊습니다. Disconnect-PSSession는 중단되거나 닫힌 PSSessions 또는 cmdlet을 사용하여 Enter-PSSession 시작된 대화형 PSSessions의 연결을 끊을 수 없으며 다른 세션에 연결된 PSSessions의 연결을 끊을 수 없습니다.

연결이 끊긴 PSSession에 다시 연결하려면 또는 Receive-PSSession cmdlet을 사용합니다Connect-PSSession.

PSSession의 연결이 끊어지면 PSSession 시간이 초과되거나 PSSession명령이 전체 출력 버퍼에 의해 차단되지 않는 한 PSSession명령은 완료될 때까지 계속 실행됩니다. 유휴 시간 제한을 변경하려면 IdleTimeoutSec 매개 변수를 사용합니다. 출력 버퍼링 모드를 변경하려면 OutputBufferingMode 매개 변수를 사용합니다. cmdlet의 Invoke-Command InDisconnectedSession 매개 변수를 사용하여 연결이 끊긴 세션에서 명령을 실행할 수도 있습니다.

연결이 끊긴 세션 기능에 대한 자세한 내용은 about_Remote_Disconnected_Sessions 참조하세요.

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

예제

예제 1 - 이름으로 세션 연결 끊기

이 명령은 현재 세션에서 Server01 컴퓨터의 PSSession 연결을 끊 UpdateSession 습니다. 이 명령은 Name 매개 변수를 사용하여 PSSession식별합니다.

PS> Disconnect-PSSession -Name UpdateSession
Id Name            ComputerName    State         ConfigurationName     Availability
-- ----            ------------    -----         -----------------     ------------
1  UpdateSession   Server01        Disconnected  Microsoft.PowerShell          None

출력은 연결 끊기 시도가 성공했음을 보여줍니다. 세션 상태가 Disconnected가용성None세션이 사용 중이 아니고 다시 연결할 수 있음을 나타냅니다.

예제 2 - 특정 컴퓨터에서 세션 연결 끊기

이 명령은 현재 세션에서 Server12 컴퓨터의 PSSession 연결을 끊 ITTask 습니다. 세션은 ITTask 현재 세션에서 만들어졌으며 Server12 컴퓨터에 연결됩니다. 이 명령은 cmdlet을 Get-PSSession 사용하여 세션과 cmdlet을 Disconnect-PSSession 가져와 연결을 끊습니다.

PS> Get-PSSession -ComputerName Server12 -Name ITTask |
  Disconnect-PSSession -OutputBufferingMode Drop -IdleTimeoutSec 86400
Id Name            ComputerName    State         ConfigurationName     Availability
-- ----            ------------    -----         -----------------     ------------
1  ITTask          Server12        Disconnected  ITTasks               None

Disconnect-PSSession 명령은 OutputBufferingMode 매개 변수를 사용하여 출력 모드를 .로 Drop설정합니다. 이 설정은 세션 출력 버퍼가 가득 차도 세션에서 실행 중인 스크립트를 계속 실행할 수 있게 합니다. 스크립트는 파일 공유의 보고서에 출력을 쓰기 때문에 결과 없이 다른 출력이 손실될 수 있습니다.

또한 이 명령은 IdleTimeoutSec 매개 변수를 사용하여 세션의 유휴 시간 제한을 24시간으로 연장합니다. 이 설정을 사용하면 이 관리자 또는 다른 관리자가 세션에 다시 연결하여 스크립트가 실행되었는지 확인하고 필요한 경우 문제를 해결할 수 있습니다.

예제 3 - 여러 컴퓨터에서 여러 PSSessions 사용

이 일련의 명령은 엔터프라이즈 시나리오에서 cmdlet을 사용하는 방법을 Disconnect-PSSession 보여 줍니다. 이 경우 새 기술자가 원격 컴퓨터의 세션에서 스크립트를 시작한 후 문제가 발생합니다. 숙련된 관리자가 세션에 연결하여 문제를 해결할 수 있도록 기술자가 세션의 연결을 끊습니다.

PS> $s = New-PSSession -ComputerName Srv1, Srv2, Srv30 -Name ITTask
PS> Invoke-Command $s -FilePath \\Server01\Scripts\Get-PatchStatus.ps1
PS> Get-PSSession -Name ITTask -ComputerName Srv1 | Disconnect-PSSession
Id Name            ComputerName    State         ConfigurationName     Availability
-- ----            ------------    -----         -----------------     ------------
1 ITTask           Srv1            Disconnected  Microsoft.PowerShell          None

PS> Get-PSSession -ComputerName Srv1, Srv2, Srv30 -Name ITTask
Id Name            ComputerName    State         ConfigurationName     Availability
-- ----            ------------    -----         -----------------     ------------
 1 ITTask          Srv1            Disconnected  Microsoft.PowerShell          None
 2 ITTask          Srv2            Opened        Microsoft.PowerShell     Available
 3 ITTask          Srv30           Opened        Microsoft.PowerShell     Available

PS> Get-PSSession -ComputerName Srv1 -Name ITTask -Credential Domain01\User01
Id Name            ComputerName    State         ConfigurationName     Availability
-- ----            ------------    -----         -----------------     ------------
 1 ITTask          Srv1            Disconnected  Microsoft.PowerShell          None

PS> $s = Connect-PSSession -ComputerName Srv1 -Name ITTask -Credential Domain01\User01
PS> Invoke-Command -Session $s {dir $HOME\Scripts\PatchStatusOutput.ps1}
PS> Invoke-Command -Session $s {mkdir $HOME\Scripts\PatchStatusOutput}
PS> Invoke-Command -Session $s -FilePath \\Server01\Scripts\Get-PatchStatus.ps1
PS> Disconnect-PSSession -Session $s

기술자는 여러 원격 컴퓨터에서 세션을 만들고 각 세션에서 스크립트를 실행하는 것으로 시작합니다. 첫 번째 명령은 cmdlet을 New-PSSession 사용하여 세 개의 원격 컴퓨터에서 세션을 만듭니 ITTask 다. 이 명령은 세션을 변수에 $s 저장합니다. 두 번째 명령은 cmdlet의 Invoke-Command FilePath 매개 변수를 사용하여 변수의 세션에서 스크립트를 $s 실행합니다.

Srv1 컴퓨터에서 실행되는 스크립트는 예기치 않은 오류를 생성합니다. 기술자는 관리자에게 연락하여 도움을 요청합니다. 관리자는 기술자가 조사할 수 있도록 세션에서 연결을 끊도록 지시합니다. 두 번째 명령은 cmdlet을 Get-PSSession 사용하여 Srv1 컴퓨터에서 세션을 가져와 ITTaskDisconnect-PSSession 연결을 끊습니다. 이 명령은 다른 컴퓨터의 ITTask 세션에 영향을 주지 않습니다.

세 번째 명령은 cmdlet을 Get-PSSession ITTask 사용하여 세션을 가져옵니다. 출력은 Srv2 및 Srv30 컴퓨터의 세션이 연결 끊기 명령의 영향을 받지 않음을 보여 ITTask 줍니다.

관리자는 자신의 홈 컴퓨터에 로그온하고, 회사 네트워크에 연결하고, PowerShell을 시작하고, cmdlet을 사용하여 Get-PSSession Srv1 컴퓨터에서 세션을 가져옵니다 ITTask . 그는 기술자의 자격 증명을 사용하여 세션에 액세스합니다.

다음으로 관리자는 cmdlet을 Connect-PSSession 사용하여 Srv1 컴퓨터의 ITTask 세션에 연결합니다. 이 명령은 세션을 $s 변수에 저장합니다.

관리자는 cmdlet을 Invoke-Command 사용하여 변수의 세션에서 $s 일부 진단 명령을 실행합니다. 그는 스크립트가 필요한 디렉터리를 찾지 못했기 때문에 실패했음을 인식합니다. 관리자는 함수를 MkDir 사용하여 디렉터리를 만든 다음 스크립트를 Get-PatchStatus.ps1 다시 시작하고 세션에서 연결을 끊습니다. 관리자는 자신의 결과를 기술자에게 보고하고, 작업을 완료하기 위해 세션에 다시 연결하도록 제안하고, 필요한 디렉터리가 없는 경우 필요한 디렉터리를 만드는 명령을 Get-PatchStatus.ps1 스크립트에 추가하도록 요청합니다.

예제 4 - PSSession의 시간 제한 값 변경

이 예제에서는 연결이 끊어질 수 있도록 세션의 IdleTimeout 속성 값을 수정하는 방법을 보여줍니다.

세션의 유휴 시간 제한 속성은 연결이 끊긴 세션이 삭제되기 전에 유지 관리되는 기간을 결정하기 때문에 연결이 끊긴 세션에 매우 중요합니다. 세션을 만들고 연결을 끊을 때 유휴 시간 제한 옵션을 설정할 수 있습니다. 세션의 유휴 시간 제한에 대한 기본값은 로컬 컴퓨터의 기본 설정 변수와 원격 컴퓨터의 세션 구성에서 설정 $PSSessionOption 됩니다. 세션에 대해 설정된 값은 세션 구성에서 설정된 값보다 우선하지만 세션 값은 MaxIdleTimeoutMs 값과 같이 세션 구성에 설정된 할당량을 초과할 수 없습니다.

PS> $Timeout = New-PSSessionOption -IdleTimeout 172800000
PS> $s = New-PSSession -Computer Server01 -Name ITTask -SessionOption $Timeout
PS> Disconnect-PSSession -Session $s
Disconnect-PSSession : The session ITTask cannot be disconnected because the specified
idle timeout value 172800(seconds) is either greater than the server maximum allowed
43200 (seconds) or less that the minimum allowed60(seconds).  Choose an idle time out
value that is within the allowed range and try again.

PS> Invoke-Command -ComputerName Server01 {Get-PSSessionConfiguration Microsoft.PowerShell} |
 Format-List -Property *

Architecture                  : 64
Filename                      : %windir%\system32\pwrshplugin.dll
ResourceUri                   : http://schemas.microsoft.com/powershell/microsoft.powershell
MaxConcurrentCommandsPerShell : 1000
UseSharedProcess              : false
ProcessIdleTimeoutSec         : 0
xmlns                         : http://schemas.microsoft.com/wbem/wsman/1/config/PluginConfiguration
MaxConcurrentUsers            : 5
lang                          : en-US
SupportsOptions               : true
ExactMatch                    : true
RunAsUser                     :
IdleTimeoutms                 : 7200000
PSVersion                     : 3.0
OutputBufferingMode           : Block
AutoRestart                   : false
SecurityDescriptorSddl        : O:NSG:BAD:P(A;;GA;;;BA)S:P(AU;FA;GA;;;WD)(AU;SA;GXGW;;;WD)
MaxMemoryPerShellMB           : 1024
MaxIdleTimeoutms              : 2147483647
Uri                           : http://schemas.microsoft.com/powershell/microsoft.powershell
SDKVersion                    : 2
Name                          : microsoft.powershell
XmlRenderingType              : text
Capability                    : {Shell}
RunAsPassword                 :
MaxProcessesPerShell          : 15
ParentResourceUri             : http://schemas.microsoft.com/powershell/microsoft.powershell
Enabled                       : true
MaxShells                     : 25
MaxShellsPerUser              : 25
Permission                    : BUILTIN\Administrators AccessAllowed
PSComputerName                : localhost
RunspaceId                    : aea84310-6dbf-4c21-90ac-13980039925a
PSShowComputerName            : True


PS> $s.Runspace.ConnectionInfo
ConnectionUri                     : http://Server01/wsman
ComputerName                      : Server01
Scheme                            : http
Port                              : 80
AppName                           : /wsman
Credential                        :
ShellUri                          : http://schemas.microsoft.com/powershell/Microsoft.PowerShell
AuthenticationMechanism           : Default
CertificateThumbprint             :
MaximumConnectionRedirectionCount : 5
MaximumReceivedDataSizePerCommand :
MaximumReceivedObjectSize         : 209715200
UseCompression                    : True
NoMachineProfile                  : False
ProxyAccessType                   : None
ProxyAuthentication               : Negotiate
ProxyCredential                   :
SkipCACheck                       : False
SkipCNCheck                       : False
SkipRevocationCheck               : False
NoEncryption                      : False
UseUTF16                          : False
OutputBufferingMode               : Drop
IncludePortInSPN                  : False
Culture                           : en-US
UICulture                         : en-US
OpenTimeout                       : 180000
CancelTimeout                     : 60000
OperationTimeout                  : 180000
IdleTimeout                       : 172800000

PS> Disconnect-PSSession $s -IdleTimeoutSec 43200
Id Name            ComputerName    State         ConfigurationName     Availability
-- ----            ------------    -----         -----------------     ------------
 4 ITTask          Server01        Disconnected  Microsoft.PowerShell          None

PS> $s.Runspace.ConnectionInfo.IdleTimeout
43200000

첫 번째 명령은 cmdlet을 New-PSSessionOption 사용하여 세션 옵션 개체를 만듭니다. IdleTimeout 매개 변수를 사용하여 유휴 시간 제한을 48시간(172800000밀리초)으로 설정합니다. 이 명령은 세션 옵션 개체를 변수에 $Timeout 저장합니다.

두 번째 명령은 cmdlet을 New-PSSession 사용하여 Server01 컴퓨터에서 세션을 만듭니 ITTask 다. 이 명령은 세션을 변수에 저장합니다 $s . SessionOption 매개 변수의 값은 변수의 48시간 유휴 시간 제한 $Timeout 입니다.

세 번째 명령은 변수의 ITTask 세션 연결을 끊습니다 $s . 세션의 유휴 시간 제한 값이 세션 구성의 MaxIdleTimeoutMs 할당량을 초과하여 명령이 실패합니다 . 세션 연결이 끊어질 때까지 유휴 시간 제한이 사용되지 않으므로 세션이 사용 중인 동안 이 위반이 감지되지 않을 수 있습니다.

네 번째 명령은 cmdlet을 Invoke-Command 사용하여 Server01 컴퓨터에서 Microsoft.PowerShell 세션 구성에 대한 명령을 실행 Get-PSSessionConfiguration 합니다. 이 명령은 cmdlet을 Format-List 사용하여 세션 구성의 모든 속성을 목록에 표시합니다. 출력은 세션 구성을 사용하는 세션에 허용되는 최대 IdleTimeout 값을 설정하는 MaxIdleTimeoutMS 속성이 밀리초(12시간)임을 43200000 보여 줍니다.

다섯 번째 명령은 변수에서 세션의 세션 $s 옵션 값을 가져옵니다. 많은 세션 옵션의 값은 세션의 Runspace 속성에 대한 ConnectionInfo 속성의 속성입니다. 출력은 세션의 IdleTimeout 속성 값이 밀리초(48시간)임을 172800000 보여 줍니다. 이는 세션 구성에서 MaxIdleTimeoutMs 할당량인 12시간을 위반합니다. 이 충돌을 해결하려면 ConfigurationName 매개 변수를 사용하여 다른 세션 구성을 선택하거나 IdleTimeout 매개 변수를 사용하여 세션의 유휴 시간 제한을 줄일 수 있습니다.

여섯 번째 명령은 세션의 연결을 끊습니다. IdleTimeoutSec 매개 변수를 사용하여 유휴 시간 제한을 최대 12시간으로 설정합니다.

일곱 번째 명령은 연결이 끊긴 세션의 IdleTimeout 속성 값을 가져오며 밀리초 단위로 측정됩니다. 출력은 명령이 성공했음을 확인합니다.

매개 변수

-Confirm

cmdlet을 실행하기 전에 확인 메시지가 표시됩니다.

형식:SwitchParameter
별칭:cf
Position:Named
Default value:False
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Id

지정된 세션 ID를 사용하여 세션에서 연결을 끊습니다. 하나 이상의 ID(쉼표로 구분)를 입력하거나 범위 연산자(..)를 사용하여 ID 범위를 지정합니다.

세션의 ID를 가져오려면 cmdlet을 Get-PSSession 사용합니다. 인스턴스 ID는 세션의 ID 속성에 저장됩니다.

형식:Int32[]
Position:1
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-IdleTimeoutSec

연결이 끊긴 PSSession의 유휴 시간 제한 값을 변경합니다. 값을 초 단위로 입력합니다. 최소값은 1분입니다 60 .

유휴 시간 제한은 연결이 끊긴 PSSession 이 원격 컴퓨터에서 유지 관리되는 기간을 결정합니다. 제한 시간이 만료되면 PSSession 이 삭제됩니다.

연결이 끊긴 PSSessions 는 연결이 끊긴 세션에서 명령이 실행되는 경우에도 연결이 끊긴 순간부터 유휴 상태로 간주됩니다.

세션의 유휴 시간 제한에 대한 기본값은 세션 구성의 IdleTimeoutMs 속성 값에 의해 설정됩니다. 기본값은 밀리초(2시간)입니다 7200000 .

이 매개 변수의 값은 기본 설정 변수의 IdleTimeout 속성 값과 세션 구성의 $PSSessionOption 기본 유휴 시간 제한 값보다 우선합니다. 그러나 이 값은 세션 구성의 MaxIdleTimeoutMs 속성 값을 초과할 수 없습니다. MaxIdleTimeoutMs기본값은 12시간(43200000밀리초)입니다.

형식:Int32
Position:Named
Default value:60
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-InstanceId

지정된 인스턴스 ID를 사용하여 세션에서 연결을 끊습니다.

인스턴스 ID는 로컬 또는 원격 컴퓨터에서 세션을 고유하게 식별하는 GUID입니다. 인스턴스 ID는 여러 컴퓨터의 여러 세션에서도 고유합니다.

세션의 인스턴스 ID를 가져오려면 cmdlet을 Get-PSSession 사용합니다. 인스턴스 ID는 세션의 InstanceID 속성에 저장됩니다.

형식:Guid[]
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-Name

지정된 이름을 가진 세션에서 연결을 끊습니다. 와일드카드가 허용됩니다.

세션의 이름을 얻으려면 cmdlet을 Get-PSSession 사용합니다. 친숙한 이름은 세션의 Name 속성에 저장됩니다.

형식:String[]
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:True

-OutputBufferingMode

출력 버퍼가 가득 찼을 때 연결이 끊긴 세션에서 명령 출력을 관리하는 방법을 결정합니다. 기본값은 Block입니다.

연결된 세션의 명령이 출력을 반환하여 출력 버퍼가 가득 찰 경우 이 매개 변수 값에 의해 세션 연결이 끊긴 동안 명령을 계속 실행할지 여부를 결정합니다. 세션이 Block 다시 연결될 때까지 명령을 일시 중단하는 값입니다. 값 Drop 은 데이터가 손실될 수 있지만 명령을 완료할 수 있도록 허용합니다. 값을 사용하는 Drop 경우 명령 출력을 디스크의 파일로 리디렉션합니다.

유효한 값은 다음과 같습니다.

  • Block: 출력 버퍼가 가득 차면 버퍼가 명확할 때까지 실행이 일시 중단됩니다.
  • Drop: 출력 버퍼가 가득 차면 실행이 계속됩니다. 새 출력이 저장되면 가장 오래된 출력을 버립니다.
  • None: 출력 버퍼링 모드가 지정되지 않았습니다. 세션 구성의 OutputBufferingMode 속성 값은 연결이 끊긴 세션에 사용됩니다.
형식:OutputBufferingMode
Position:Named
Default value:Block
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Session

지정된 PSSessions에서 연결을 끊습니다. cmdlet이 반환하는 개체와 같은 PSSession 개체를 New-PSSession 입력합니다. PSSession 개체를 .에 파이프할 Disconnect-PSSession수도 있습니다.

이 cmdlet은 Get-PSSession 연결이 끊어진 PSSessions다른 컴퓨터의 다른 세션에 연결된 PSSessions를 포함하여 원격 컴퓨터에서 종료되는 모든 PSSessions를 가져올 수 있습니다. Disconnect-PSSession는 현재 세션에 연결된 PSSession연결 해제합니다. 다른 PSSessions 를 파이프하면 Disconnect-PSSession명령이 Disconnect-PSSession 실패합니다.

형식:PSSession[]
Position:1
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-ThrottleLimit

명령에 대한 Disconnect-PSSession 제한 제한을 설정합니다.

제한 제한은 이 명령을 실행하기 위해 설정할 수 있는 최대 동시 연결 수입니다. 이 매개 변수를 생략하거나 기본값32인 값을 0입력하면 사용됩니다.

제한 제한은 세션이나 컴퓨터가 아닌 현재 명령에만 적용됩니다.

형식:Int32
Position:Named
Default value:32
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-WhatIf

cmdlet이 실행될 경우 결과 동작을 표시합니다. cmdlet이 실행되지 않습니다.

형식:SwitchParameter
별칭:wi
Position:Named
Default value:False
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

입력

PSSession

세션을 이 cmdlet으로 파이프할 수 있습니다.

출력

PSSession

이 cmdlet은 연결이 끊긴 세션을 나타내는 개체를 반환합니다.

참고

PowerShell에는 다음 별칭이 포함됩니다.Disconnect-PSSession

  • Windows:
    • dnsn

이 cmdlet은 Windows 플랫폼에서만 사용할 수 있습니다.

  • cmdlet은 Disconnect-PSSession 로컬 및 원격 컴퓨터가 PowerShell 3.0 이상을 실행하는 경우에만 작동합니다.

  • 연결이 Disconnect-PSSession 끊긴 세션에서 cmdlet을 사용하는 경우 명령은 세션에 영향을 주지 않으며 오류를 생성하지 않습니다.

  • 대화형 보안 토큰을 사용하여 연결이 끊긴 루프백 세션(EnableNetworkAccess 매개 변수로 만든 세션)은 세션이 만들어진 컴퓨터에서만 다시 연결할 수 있습니다. 이 제한은 악의적인 액세스로부터 컴퓨터를 보호합니다.

  • PSSession연결을 끊으면 세션 상태가 Disconnected 고 가용성이 None입니다.

    State 속성의 값은 현재 세션을 기준으로 합니다. 따라서 값 Disconnected 은 PSSession현재 세션에 연결되지 않음을 의미합니다. 그러나 PSSession모든 세션에서 연결이 끊어지는 것은 아닙니다. 다른 세션에 연결되어 있을 수도 있습니다. 세션에 연결하거나 다시 연결할 수 있는지 여부를 확인하려면 가용성 속성을 사용합니다.

    가용성 값은 None 세션에 연결할 수 있음을 나타냅니다. 값 Busy 은 PSSession이 다른 세션에 연결되어 있으므로 연결할 수 없음을 나타냅니다.

    세션의 State 속성 값에 대한 자세한 내용은 RunspaceState 열거형을 참조하세요.

    세션의 가용성 속성 값에 대한 자세한 내용은 RunspaceAvailability 열거형을 참조 하세요.