Receive-PSSession
Parancsok eredményeinek lekérdezése leválasztott munkamenetekben
Syntax
Session (Alapértelmezett)
Receive-PSSession
[-Session] <PSSession>
[-OutTarget <OutTarget>]
[-JobName <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Id
Receive-PSSession
[-Id] <Int32>
[-OutTarget <OutTarget>]
[-JobName <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ComputerSessionName
Receive-PSSession
[-ComputerName] <String>
-Name <String>
[-ApplicationName <String>]
[-ConfigurationName <String>]
[-OutTarget <OutTarget>]
[-JobName <String>]
[-Credential <PSCredential>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[-Port <Int32>]
[-UseSSL]
[-SessionOption <PSSessionOption>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ComputerInstanceId
Receive-PSSession
[-ComputerName] <String>
-InstanceId <Guid>
[-ApplicationName <String>]
[-ConfigurationName <String>]
[-OutTarget <OutTarget>]
[-JobName <String>]
[-Credential <PSCredential>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[-Port <Int32>]
[-UseSSL]
[-SessionOption <PSSessionOption>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ConnectionUriInstanceId
Receive-PSSession
[-ConnectionUri] <Uri>
-InstanceId <Guid>
[-ConfigurationName <String>]
[-AllowRedirection]
[-OutTarget <OutTarget>]
[-JobName <String>]
[-Credential <PSCredential>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[-SessionOption <PSSessionOption>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ConnectionUriSessionName
Receive-PSSession
[-ConnectionUri] <Uri>
-Name <String>
[-ConfigurationName <String>]
[-AllowRedirection]
[-OutTarget <OutTarget>]
[-JobName <String>]
[-Credential <PSCredential>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[-SessionOption <PSSessionOption>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
InstanceId
Receive-PSSession
-InstanceId <Guid>
[-OutTarget <OutTarget>]
[-JobName <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
SessionName
Receive-PSSession
-Name <String>
[-OutTarget <OutTarget>]
[-JobName <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
A Receive-PSSession parancsmag lekéri a leválasztott Windows PowerShell-munkamenetekben (PSSession) futó parancsok eredményeit. Ha a munkamenet jelenleg csatlakoztatva van, Receive-PSSession lekéri a munkamenet leválasztásakor futó parancsok eredményeit. Ha a munkamenet továbbra is megszakad, a Receive-PSSession csatlakozik a munkamenethez, folytatja a felfüggesztett parancsokat, és megkapja a munkamenetben futó parancsok eredményeit.
A Connect-PSSession parancsok mellett vagy helyett használhat Receive-PSSession. Receive-PSSession bármilyen leválasztott vagy újracsatlakoztatott munkamenethez csatlakozhat. Ezek közé tartoznak a más munkamenetekben vagy más számítógépeken elindítottak.
Receive-PSSession olyan PSSessions működik, amelyek szándékosan megszakadtak, például a Disconnect-PSSession parancsmag vagy a Invoke-Command parancsmag InDisconnectedSession paraméterének használatával, vagy véletlenül, például hálózati megszakítással.
Ha a Receive-PSSession parancsmaggal csatlakozik egy olyan munkamenethez, amelyen nincsenek parancsok futnak vagy függesztenek fel, a Receive-PSSession csatlakozik a munkamenethez, de nem ad vissza kimenetet vagy hibákat.
A Leválasztott munkamenetek funkcióval kapcsolatos további információkért lásd about_Remote_Disconnected_Sessions.
Ezt a parancsmagot a Windows PowerShell 3.0-ban vezettük be.
Példák
1. példa: Csatlakozás PSSession-hez
PS C:\> Receive-PSSession -ComputerName Server01 -Name ITTask
Ez a parancs a Receive-PSSession parancsmaggal csatlakozik a Server01 számítógépen futó ITTask-munkamenethez, és lekéri a munkamenetben futó parancsok eredményeit.
Mivel a parancs nem használja az OutTarget paramétert, az eredmények a parancssorban jelennek meg.
2. példa: Az összes parancs eredményének lekérése leválasztott munkamenetekben
PS C:\> Get-PSSession -ComputerName Server01, Server02 | Receive-PSSession
Ez a parancs lekéri a Server01 és a Server02 számítógépek összes leválasztott munkamenetében futó összes parancs eredményét.
Ha egy munkamenet nem volt leválasztva, vagy nem futtat parancsokat, Receive-PSSession nem csatlakozik a munkamenethez, és nem ad vissza semmilyen kimenetet vagy hibát.
3. példa: Munkamenetben futó szkript eredményeinek lekérése
PS C:\> Receive-PSSession -ComputerName Server01 -Name ITTask -OutTarget Job -JobName ITTaskJob01 -Credential Domain01\Admin01
Id Name State HasMoreData Location
-- ---- ----- ----------- --------
16 ITTaskJob01 Running True Server01
Ez a parancs a Receive-PSSession parancsmagot használja a Server01 számítógépen futó ITTask-munkamenetben futó szkript eredményeinek lekéréséhez.
A parancs a ComputerName és Name paramétereket használja a leválasztott munkamenet azonosításához. Az OutTarget paramétert használja a Feladat értékével, hogy a Fogadó-PSSession az eredményeket feladatként adja vissza, a JobName paraméter pedig megadja a feladat nevét az újracsatlakoztatott munkamenetben.
A parancs a Hitelesítő adatok paraméterrel futtatja a Receive-PSSession parancsot egy tartományi rendszergazda engedélyével.
A kimenet azt mutatja, hogy Receive-PSSession az eredményeket feladatként adja vissza az aktuális munkamenetben. A feladat eredményeinek lekéréséhez használjon egy Receive-Job parancsot
4. példa: Eredmények lekérése hálózatkimaradás után
The first command uses the New-PSSession cmdlet to create a session on the Server01 computer. The command saves the session in the $s variable.The second command gets the session in the $s variable. Notice that the **State** is Opened and the **Availability** is Available. These values indicate that you are connected to the session and can run commands in the session.
PS C:\> $s = New-PSSession -ComputerName Server01 -Name AD -ConfigurationName ADEndpoint
PS C:\> $s
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
8 AD Server01 Opened ADEndpoint Available
The third command uses the Invoke-Command cmdlet to run a script in the session in the $s variable.The script begins to run and return data, but a network outage occurs that interrupts the session. The user has to exit the session and restart the local computer.
PS> Invoke-Command -Session $s -FilePath \\Server12\Scripts\SharedScripts\New-ADResolve.ps1
Running "New-ADResolve.ps1"
# Network outage
# Restart local computer
# Network access is not re-established within 4 minutes
When the computer restarts, the user starts Windows PowerShell and runs a Get-PSSession command to get sessions on the Server01 computer. The output shows that the AD session still exists on the Server01 computer. The **State** indicates that it is disconnected and the **Availability** value, None, indicates that it is not connected to any client sessions.
PS C:\> Get-PSSession -ComputerName Server01
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
1 Backup Server01 Disconnected Microsoft.PowerShell None
8 AD Server01 Disconnected ADEndpoint None
The fifth command uses the **Receive-PSSession** cmdlet to reconnect to the AD session and get the results of the script that ran in the session. The command uses the *OutTarget* parameter to request the results in a job named ADJob.The command returns a job object. The output indicates that the script is still running.
PS C:\> Receive-PSSession -ComputerName Server01 -Name AD -OutTarget Job -JobName AD
Job Id Name State HasMoreData Location
-- ---- ----- ----------- --------
16 ADJob Running True Server01
The sixth command uses the Get-PSSession cmdlet to check the job state. The output confirms that, in addition to resuming script execution and getting the script results, the **Receive-PSSession** cmdlet reconnected to the AD session, which is now open and available for commands.
PS C:\> Get-PSSession -ComputerName Server01
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
1 Backup Server01 Disconnected Microsoft.PowerShell Busy
8 AD Server01 Opened ADEndpoint Available
Ez a példa a Receive-PSSession parancsmagot használja egy feladat eredményeinek lekéréséhez, miután egy hálózati kimaradás megszakítja a munkamenet-kapcsolatot. A Windows PowerShell automatikusan megkísérli újracsatlakozni a munkamenetet minden második alkalommal a következő négy percben, és csak akkor hagyja abba az erőfeszítést, ha a négyperces időköz minden kísérlete sikertelen.
5. példa: Kapcsolat helyreállítása leválasztott munkamenetekhez
The first command uses the Invoke-Command cmdlet to run a script on the three remote computers. Because the scripts gathers and summarize data from multiple databases, it often takes the script an extended time to finish. The command uses the *InDisconnectedSession* parameter, which starts the scripts and then immediately disconnects the sessions.The command uses the *SessionOption* parameter to extend the **IdleTimeout** value of the disconnected session. Disconnected sessions are considered to be idle from the moment they are disconnected, so it is important to set the idle time-out for long enough that the commands can complete and you can reconnect to the session, if necessary. You can set the **IdleTimeout** only when you create the **PSSession** and change it only when you disconnect from it. You cannot change the **IdleTimeout** value when you connect to a **PSSession** or receiving its results.After running the command, the user exits Windows PowerShell and closes the computer .
PS C:\> Invoke-Command -InDisconnectedSession -ComputerName Server01, Server02, Server30 -FilePath \\Server12\Scripts\SharedScripts\Get-BugStatus.ps1 -Name BugStatus -SessionOption @{IdleTimeout = 86400000} -ConfigurationName ITTasks# Exit
# Start Windows PowerShell on a different computer.
On the next day, the user resumes Windows and starts Windows PowerShell. The second command uses the Get-PSSession cmdlet to get the sessions in which the scripts were running. The command identifies the sessions by the computer name, session name, and the name of the session configuration and saves the sessions in the $s variable.The third command displays the value of the $s variable. The output shows that the sessions are disconnected, but not busy, as expected.
PS C:\> $s = Get-PSSession -ComputerName Server01, Server02, Server30 -Name BugStatus
PS C:\> $s
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
1 ITTask Server01 Disconnected ITTasks None
8 ITTask Server02 Disconnected ITTasks None
2 ITTask Server30 Disconnected ITTasks None
The fourth command uses the **Receive-PSSession** cmdlet to connect to the sessions in the $s variable and get their results. The command saves the results in the $Results variable.Another display of the $s variable shows that the sessions are connected and available for commands.
PS C:\> $Results = Receive-PSSession -Session $s
PS C:\> $s
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
1 ITTask Server01 Opened ITTasks Available
8 ITTask Server02 Opened ITTasks Available
2 ITTask Server30 Opened ITTasks Available
The fifth command displays the script results in the $Results variable. If any of the results are unexpected, the user can run commands in the sessions to investigate.
PS C:\> $Results
Bug Report - Domain 01
----------------------
ComputerName BugCount LastUpdated
-------------- --------- ------------
Server01 121 Friday, December 30, 2011 5:03:34 PM
Ez a példa a Receive-PSSession parancsmagot használja a szándékosan leválasztott munkamenetekhez való újracsatlakozáshoz, és a munkamenetekben futó feladatok eredményeinek lekéréséhez.
6. példa: Feladat futtatása leválasztott munkamenetben
The first command uses the New-PSSession cmdlet to create the Test session on the Server01 computer. The command saves the session in the $s variable.
PS C:\> $s = New-PSSession -ComputerName Server01 -Name Test
The second command uses the Invoke-Command cmdlet to run a command in the session in the $s variable. The command uses the *AsJob* parameter to run the command as a job and to create the job object in the current session. The command returns a job object, which is saved in the $j variable.The third command displays the job object in the $j variable.
PS C:\> $j = Invoke-Command -Session $s { 1..1500 | Foreach-Object {"Return $_"; sleep 30}} -AsJob
PS C:\> $j
Id Name State HasMoreData Location
-- ---- ----- ----------- --------
16 Job1 Running True Server01
The fourth command disconnects the session in the $s variable.
PS C:\> $s | Disconnect-PSSession
Id Name ComputerName State ConfigurationName Availability
-- ---- ------------ ----- ----------------- ------------
1 Test Server01 Disconnected Microsoft.PowerShell None
The fifth command shows the effect of disconnecting on the job object in the $j variable. The job state is now Disconnected.
PS C:\> $j
Id Name State HasMoreData Location
-- ---- ----- ----------- --------
16 Job1 Disconnected True Server01
The sixth command runs a Receive-Job command on the job in the $j variable. The output shows that the job began to return output before the session and the job were disconnected.
PS C:\> Receive-Job $j -Keep
Return 1
Return 2
The seventh command is run in the same client session. The command uses the Connect-PSSession cmdlet to reconnect to the Test session on the Server01 computer and saves the session in the $s2 variable.
PS C:\> $s2 = Connect-PSSession -ComputerName Server01 -Name Test
The eighth command uses the **Receive-PSSession** cmdlet to get the results of the job that was running in the session. Because the command is run in the same session, **Receive-PSSession** returns the results as a job by default and reuses the same job object. The command saves the job in the $j2 variable.The ninth command uses the **Receive-Job** cmdlet to get the results of the job in the $j variable.
PS C:\> $j2 = Receive-PSSession -ComputerName Server01 -Name Test
PS C:\> Receive-Job $j
Return 3
Return 4
Ez a példa bemutatja, mi történik egy leválasztott munkamenetben futó feladatsal.
Paraméterek
-AllowRedirection
Azt jelzi, hogy ez a parancsmag lehetővé teszi a kapcsolat átirányítását egy alternatív egységes erőforrás-azonosítóra (URI).
Ha a ConnectionURI paramétert használja, a távoli cél egy utasítást adhat vissza egy másik URI-ra való átirányításhoz. A Windows PowerShell alapértelmezés szerint nem irányítja át a kapcsolatokat, de ezzel a paramétersel engedélyezheti a kapcsolat átirányítását.
A MaximumConnectionRedirectionCount munkamenetbeállítás értékének módosításával azt is korlátozhatja, hogy a rendszer hányszor irányítsa át a kapcsolatot. Használja a New-PSSessionOption parancsmag MaximumRedirection paraméterét, vagy állítsa be a $PSSessionOption beállítási változó MaximumConnectionRedirectionCount tulajdonságát. Az alapértelmezett érték 5.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
ConnectionUriInstanceId
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
ConnectionUriSessionName
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-ApplicationName
Egy alkalmazást határoz meg. Ez a parancsmag csak a megadott alkalmazást használó munkamenetekhez csatlakozik.
Adja meg a kapcsolati URI alkalmazásnév-szegmensét. Az alábbi kapcsolati URI-ban például az alkalmazás neve WSMan: https://localhost:5985/WSMAN. A munkamenet alkalmazásnevét a rendszer a munkamenet Runspace.ConnectionInfo.AppName tulajdonságában tárolja.
Ennek a paraméternek az értéke a munkamenetek kiválasztására és szűrésére szolgál. A munkamenet által használt alkalmazást nem módosítja.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
ComputerSessionName
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
ComputerInstanceId
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
-Authentication
Megadja azt a mechanizmust, amely a felhasználó hitelesítő adatainak hitelesítésére szolgál a parancsban a leválasztott munkamenethez való újracsatlakozáshoz. A paraméter elfogadható értékei a következők:
- Alapértelmezett
- Alapszintű
- Credssp
- Összefoglaló
- Kerberos
- Tárgyal
- Tárgyalás Beágyazott Hitelesítő Adattal
Az alapértelmezett érték az Alapértelmezett.
A paraméter értékeivel kapcsolatos további információkért lásd AuthenticationMechanism Enumeration.
Figyelmeztetés
A hitelesítő adatok biztonsági támogatási szolgáltatójának (CredSSP) hitelesítése, amelyben a felhasználói hitelesítő adatok átadva vannak egy hitelesítendő távoli számítógépnek, olyan parancsokhoz készült, amelyek több erőforráson is hitelesítést igényelnek, például távoli hálózati megosztáshoz való hozzáféréshez. Ez a mechanizmus növeli a távoli művelet biztonsági kockázatát. Ha a távoli számítógép biztonsága sérül, a neki átadott hitelesítő adatokkal szabályozható a hálózati munkamenet.
Paramétertulajdonságok
| Típus: | AuthenticationMechanism |
| Alapértelmezett érték: | None |
| Elfogadott értékek: | Default, Basic, Negotiate, NegotiateWithImplicitCredential, Credssp, Digest, Kerberos |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
ComputerSessionName
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
ComputerInstanceId
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
ConnectionUriInstanceId
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
ConnectionUriSessionName
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-CertificateThumbprint
Megadja egy olyan felhasználói fiók digitális nyilvános kulcsú tanúsítványát (X509), amely jogosult csatlakozni a leválasztott munkamenethez. Adja meg a tanúsítvány ujjlenyomatát.
A tanúsítványok az ügyféltanúsítvány-alapú hitelesítésben használatosak. Ezek csak helyi felhasználói fiókokra képezhetők le. Nem működnek tartományi fiókokkal.
Tanúsítvány ujjlenyomatának lekéréséhez használjon egy Get-Item vagy Get-ChildItem parancsot a Windows PowerShell Cert: meghajtón.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
ComputerSessionName
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
ComputerInstanceId
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
ConnectionUriInstanceId
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
ConnectionUriSessionName
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-ComputerName
Azt a számítógépet adja meg, amelyen a leválasztott munkamenetet tárolja a rendszer. A munkamenetek a kiszolgálóoldali számítógépen vannak tárolva, vagy egy kapcsolat végét kapják. Az alapértelmezett beállítás a helyi számítógép.
Írja be egy számítógép NetBIOS-nevét, IP-címét vagy teljes tartománynevét. A helyettesítő karakterek nem engedélyezettek. A helyi számítógép megadásához írja be a számítógép nevét, a localhost vagy a pont (.)
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | Cn |
Paraméterkészletek
ComputerSessionName
| Position: | 0 |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
ComputerInstanceId
| Position: | 0 |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
-ConfigurationName
Csak a megadott munkamenet-konfigurációt használó munkamenetekhez csatlakozik.
Adja meg a konfiguráció nevét vagy a munkamenet-konfiguráció teljes minősített erőforrás-URI-ját. Ha csak a konfiguráció nevét adja meg, a következő séma URI-ja elő van állítva: https://schemas.microsoft.com/powershell. A munkamenet konfigurációs neve a munkamenet ConfigurationName tulajdonságában van tárolva.
Ennek a paraméternek az értéke a munkamenetek kiválasztására és szűrésére szolgál. Nem módosítja a munkamenet által használt munkamenet-konfigurációt.
További információ a munkamenet-konfigurációkról: about_Session_Configurations.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
ComputerSessionName
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
ComputerInstanceId
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
ConnectionUriInstanceId
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
ConnectionUriSessionName
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
-Confirm
Megerősítést kér a parancsmag futtatása előtt.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | Cf |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-ConnectionUri
Megadja a leválasztott munkamenethez való újracsatlakozáshoz használt kapcsolati végpontot meghatározó URI-t.
Az URI-nak teljes mértékben minősítettnek kell lennie. A sztring formátuma a következő:
<Transport>://<ComputerName>:<Port>/<ApplicationName>
Az alapértelmezett érték a következő:
https://localhost:5985/WSMAN
Ha nem ad meg kapcsolati URI-t, használhatja a UseSSL, ComputerName, Portés ApplicationName paramétereket a kapcsolat URI-értékeinek megadásához.
Az URI Átviteli szegmensének érvényes értékei a HTTP és a HTTPS. Ha egy átviteli szegmenshez tartozó kapcsolati URI-t ad meg, de nem ad meg portot, a munkamenet szabványportokkal jön létre: HTTP-hez 80, HTTPS-hez pedig 443. A Windows PowerShell-remoting alapértelmezett portjának használatához adja meg az 5985-ös portot a HTTP-hez, a HTTPS-hez pedig az 5986-os portot.
Ha a célszámítógép átirányítja a kapcsolatot egy másik URI-ra, a Windows PowerShell megakadályozza az átirányítást, kivéve, ha a parancsban az AllowRedirection paramétert használja.
Paramétertulajdonságok
| Típus: | Uri |
| Alapértelmezett érték: | https://localhost:5985/WSMAN |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | URI, CU |
Paraméterkészletek
ConnectionUriInstanceId
| Position: | 0 |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
ConnectionUriSessionName
| Position: | 0 |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
-Credential
Olyan felhasználói fiókot ad meg, amely rendelkezik engedéllyel a leválasztott munkamenethez való csatlakozáshoz. Az alapértelmezett az aktuális felhasználó.
Írjon be egy felhasználónevet, például User01 vagy Domain01\User01. Vagy adjon meg egy PSCredential objektumot, például a Get-Credential parancsmag által létrehozott objektumot. Ha felhasználónevet ír be, ez a parancsmag jelszó megadását kéri.
Paramétertulajdonságok
| Típus: | PSCredential |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
ComputerSessionName
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
ComputerInstanceId
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
ConnectionUriInstanceId
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
ConnectionUriSessionName
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Id
Megadja a leválasztott munkamenet azonosítóját. Az id paraméter csak akkor működik, ha a leválasztott munkamenet korábban az aktuális munkamenethez volt csatlakoztatva.
Ez a paraméter érvényes, de nem érvényes, ha a munkamenet a helyi számítógépen van tárolva, de nem csatlakozott az aktuális munkamenethez.
Paramétertulajdonságok
| Típus: | Int32 |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
Id
| Position: | 0 |
| Kötelező: | True |
| Folyamatból származó érték: | True |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
-InstanceId
Megadja a leválasztott munkamenet ID-jét.
A példányazonosító egy GUID, amely egyedileg azonosít egy PSSession egy helyi vagy távoli számítógépen futó példányát.
A példányazonosító a InstanceID tulajdonságban van tárolva a PSSession.
Paramétertulajdonságok
| Típus: | Guid |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
ComputerInstanceId
| Position: | Named |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
ConnectionUriInstanceId
| Position: | Named |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
InstanceId
| Position: | Named |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-JobName
Megadja annak a feladatnak a rövid nevét, amelyet Receive-PSSession visszaad.
Fogadó-PSSession akkor ad vissza feladatot, ha a OutTarget paraméter értéke Feladat, vagy a leválasztott munkamenetben futó feladat az aktuális munkamenetben indult el.
Ha a leválasztott munkamenetben futó feladat az aktuális munkamenetben indult el, a Windows PowerShell újra felhasználja az eredeti feladatobjektumot a munkamenetben, és figyelmen kívül hagyja a JobName paraméter értékét.
Ha a leválasztott munkamenetben futó feladat egy másik munkamenetben indult el, a Windows PowerShell létrehoz egy új feladatobjektumot. Alapértelmezett nevet használ, de ezzel a paraméterrel módosíthatja a nevet.
Ha az OutTarget paraméter alapértelmezett vagy explicit értéke nem Feladat, a parancs sikeres, de a JobName paraméternek nincs hatása.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Name
A leválasztott munkamenet barátságos nevét adja meg.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
ComputerSessionName
| Position: | Named |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
ConnectionUriSessionName
| Position: | Named |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
SessionName
| Position: | Named |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-OutTarget
Meghatározza a munkamenet eredményeinek visszaadott módját. A paraméter elfogadható értékei a következők:
- Foglalkozás. Az eredményeket aszinkron módon adja vissza egy feladatobjektumban. A feladat nevét vagy új nevét a JobName paraméterrel adhatja meg.
- Házigazda. Az eredményeket a parancssorba adja vissza (szinkronban). Ha a parancs folytatása folyamatban van, vagy az eredmények nagy számú objektumból állnak, a válasz késhet.
Az OutTarget paraméter alapértelmezett értéke a Host. Ha azonban a leválasztott munkamenetben fogadott parancs az aktuális munkamenetben indult el, a OutTarget paraméter alapértelmezett értéke az az űrlap, amelyben a parancs elindult. Ha a parancs feladatként lett elindítva, a rendszer alapértelmezés szerint feladatként adja vissza. Ellenkező esetben a rendszer alapértelmezés szerint visszaadja a gazdaprogramnak.
A gazdaprogram általában késedelem nélkül jeleníti meg a visszaadott objektumokat a parancssorban, de ez a viselkedés eltérő lehet.
Paramétertulajdonságok
| Típus: | OutTarget |
| Alapértelmezett érték: | None |
| Elfogadott értékek: | Default, Host, Job |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Port
Megadja a távoli számítógépen a munkamenethez való újracsatlakozáshoz használt hálózati portot. Távoli számítógéphez való csatlakozáshoz a távoli számítógépnek a kapcsolat által használt portot kell figyelnie. Az alapértelmezett portok az 5985, amely a HTTP WinRM-portja, és az 5986, amely a HTTPS WinRM-portja.
Egy másik port használata előtt konfigurálnia kell a WinRM-figyelőt a távoli számítógépen az adott port figyelésére. A figyelő konfigurálásához írja be a következő két parancsot a Windows PowerShell parancssorba:
Remove-Item -Path WSMan:\Localhost\listener\listener* -Recurse
New-Item -Path WSMan:\Localhost\listener -Transport http -Address * -Port \<port-number\>
Ne használja a Port paramétert, hacsak nem szükséges. A parancsban beállított port az összes olyan számítógépre vagy munkamenetre vonatkozik, amelyen a parancs fut. Egy másik portbeállítás megakadályozhatja, hogy a parancs minden számítógépen fusson.
Paramétertulajdonságok
| Típus: | Int32 |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
ComputerSessionName
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
ComputerInstanceId
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Session
A leválasztott munkamenetet adja meg. Adjon meg egy változót, amely tartalmazza a PSSession, vagy egy olyan parancsot, amely létrehozza vagy lekéri a PSSession, például egy Get-PSSession parancsot.
Paramétertulajdonságok
| Típus: | PSSession |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
Session
| Position: | 0 |
| Kötelező: | True |
| Folyamatból származó érték: | True |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
-SessionOption
A munkamenet speciális beállításait adja meg. Adjon meg egy SessionOption objektumot, például a New-PSSessionOption parancsmaggal létrehozott objektumot, vagy egy kivonattáblát, amelyben a kulcsok munkamenet-beállításnevek, az értékek pedig munkamenet-beállításértékek.
A beállítások alapértelmezett értékeit az $PSSessionOption beállítási változó értéke határozza meg, ha be van állítva. Ellenkező esetben az alapértelmezett értékeket a munkamenet-konfigurációban megadott beállítások állítják be.
A munkamenet-beállításértékek elsőbbséget élveznek a $PSSessionOption beállítási változóban és a munkamenet-konfigurációban beállított munkamenetek alapértelmezett értékeivel szemben. Azonban nem elsőbbséget élveznek a munkamenet-konfigurációban beállított maximális értékekkel, kvótával vagy korlátokkal szemben.
Az alapértelmezett értékeket tartalmazó munkamenet-beállítások leírását lásd: New-PSSessionOption. A $PSSessionOption beállítási változóval kapcsolatos információkért lásd: about_Preference_Variables. További információ a munkamenet-konfigurációkról: about_Session_Configurations.
Paramétertulajdonságok
| Típus: | PSSessionOption |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
ComputerSessionName
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
ComputerInstanceId
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
ConnectionUriInstanceId
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
ConnectionUriSessionName
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-UseSSL
Azt jelzi, hogy ez a parancsmag a Secure Sockets Layer (SSL) protokollt használja a leválasztott munkamenethez való csatlakozáshoz. Alapértelmezés szerint az SSL nem használatos.
WS-Management titkosítja a hálózaton keresztül továbbított összes Windows PowerShell-tartalmat. A UseSSL egy további védelem, amely HTTP-kapcsolat helyett HTTPS-kapcsolaton keresztül küldi el az adatokat.
Ha ezt a paramétert használja, de az SSL nem érhető el a parancshoz használt porton, a parancs meghiúsul.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
ComputerSessionName
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
ComputerInstanceId
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-WhatIf
Megjeleníti, mi történne, ha a parancsmag futna. A parancsmag nem fut.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | Wi |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
CommonParameters
Ez a parancsmag a következő gyakori paramétereket támogatja: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction és -WarningVariable. További információért lásd about_CommonParameters.
Bevitelek
PSSession
Ehhez a parancsmaghoz a munkamenet-objektumokat, például a Get-PSSession parancsmag által visszaadott objektumokat is be lehet csövezni.
Int32
Ehhez a parancsmaghoz a munkamenet-azonosítókat is be lehet csövezni.
Guid
A parancsmagban futtathatja a munkamenetek példányazonosítóit.
String
A parancsmaghoz a munkamenetek neveit is be lehet csövezni.
Kimenetek
System.Management.Automation.Job or PSObject
Ez a parancsmag a leválasztott munkamenetben futtatott parancsok eredményeit adja vissza, ha vannak ilyenek. Ha az OutTarget paraméter értéke vagy alapértelmezett értéke Feladat, Fogadó-PSSession egy feladatobjektumot ad vissza. Ellenkező esetben az adott parancs eredményeit képviselő objektumokat ad vissza.
Jegyzetek
Receive-PSSession csak a leválasztott munkamenetekből kap eredményeket. Csak a Windows PowerShell 3.0-s vagy újabb verzióit futtató számítógépekhez csatlakozó vagy ott végződő munkamenetek kapcsolhatók le és kapcsolhatók újra.
Ha a leválasztott munkamenetben futó parancsok nem hoztak létre eredményeket, vagy ha az eredményeket már visszaadták egy másik munkamenetbe, Fogadó-PSSession nem hoz létre kimenetet.
A munkamenet kimeneti pufferelési módja határozza meg, hogy a munkamenet parancsai hogyan kezelik a kimenetet a munkamenet leválasztásakor. Amikor a munkamenet OutputBufferingMode opciójának értéke Drop, és a kimeneti puffer megtelik, a parancs elkezdi törölni a kimenetet. Receive-PSSession nem tudja helyreállítani ezt a kimenetet. A kimeneti pufferelési mód beállításával kapcsolatos további információkért tekintse meg a New-PSSessionOption és New-PSTransportOption parancsmagok súgótémaköröket.
Az PSSession tétlen időtúllépési értékét nem módosíthatja, ha csatlakozik a PSSession vagy eredményeket kap. A Receive-PSSessionSessionOption paramétere egy SessionOption objektumot vesz fel, amely IdleTimeout értékkel rendelkezik. A IdleTimeoutSessionOption objektum és a IdleTimeout $PSSessionOption értéke azonban figyelmen kívül lesz hagyva, amikor PSSession vagy eredmények fogadása során csatlakozik.
A PSSession
PSSession létrehozásakor a New-PSSession vagymeghívási parancsmagok használatával, valamint aPSSession leválasztásakor beállíthatja és módosíthatja az inaktív időtúllépést.A PSSessionIdleTimeout tulajdonsága kritikus fontosságú a leválasztott munkamenetek szempontjából, mivel meghatározza, hogy mennyi ideig tart fenn a leválasztott munkamenet a távoli számítógépen. A leválasztott munkamenetek inaktívnak minősülnek attól a pillanattól kezdve, amikor le vannak választva, még akkor is, ha a parancsok a leválasztott munkamenetben futnak.
Ha egy távoli munkamenetben indít el egy feladatot a Invoke-Command parancsmag AsJob paraméterével, a feladatobjektum az aktuális munkamenetben jön létre, annak ellenére, hogy a feladat a távoli munkamenetben fut. Ha leválasztja a távoli munkamenetet, az aktuális munkamenet feladatobjektuma most le lesz választva a feladatról. A feladatobjektum továbbra is tartalmaz minden visszaadott eredményt, de a leválasztott munkamenetben nem kap új eredményeket a feladattól.
Ha egy másik ügyfél csatlakozik a futó feladatot tartalmazó munkamenethez, az eredeti munkamenetben az eredeti feladatobjektumnak küldött eredmények nem érhetők el az újonnan csatlakoztatott munkamenetben. Az újracsatlakoztatott munkamenetben csak azok az eredmények érhetők el, amelyek nem lettek kézbesítve az eredeti feladatobjektumnak.
Hasonlóképpen, ha egy munkamenetben elindít egy szkriptet, majd leválasztja a munkamenetről, a szkript által a munkamenethez a leválasztás előtt elért eredmények nem érhetők el a munkamenethez csatlakozó másik ügyfél számára.
A leválasztani kívánt munkamenetek adatvesztésének megelőzéséhez használja a
Invoke-Command parancsmagInDisconnectedSession paraméterét. Mivel ez a paraméter megakadályozza, hogy az eredmények visszakerüljenek az aktuális munkamenetbe, a munkamenet újracsatlakozásakor minden eredmény elérhető lesz.Az adatvesztést az Invoke-Command parancsmaggal is megakadályozhatja, hogy Start-Job parancsot futtasson a távoli munkamenetben. Ebben az esetben a feladatobjektum a távoli munkamenetben jön létre. A Receive-PSSession parancsmag nem használható a feladat eredményeinek lekéréséhez. Ehelyett a Connect-PSSession parancsmaggal csatlakozzon a munkamenethez, majd a Invoke-Command parancsmaggal futtasson egy Receive-Job parancsot a munkamenetben.
Ha egy futó feladatot tartalmazó munkamenet megszakad, majd újracsatlakozik, a rendszer csak akkor használja újra az eredeti feladatobjektumot, ha a feladat leválasztva van, és újra csatlakozik ugyanahhoz a munkamenethez, és az újrakapcsolódási parancs nem ad meg új feladatnevet. Ha a munkamenet egy másik ügyfél munkamenethez csatlakozik, vagy új feladatnév van megadva, a Windows PowerShell létrehoz egy új feladatobjektumot az új munkamenethez.
Ha leválaszt egy PSSession, a munkamenet státusza Leválasztva, és a rendelkezésre állás értéke Nincs.
Az State tulajdonság értéke az aktuális munkamenethez viszonyítva van. Ezért a leválasztott érték azt jelenti, hogy a PSSession nincs csatlakoztatva az aktuális munkamenethez. Ez azonban nem jelenti azt, hogy a PSSession leválasztva van az összes munkamenetről. Lehet, hogy egy másik munkamenethez csatlakozik. Annak megállapításához, hogy tud-e csatlakozni vagy újra csatlakozni a munkamenethez, használja a Rendelkezésre állási tulajdonságot.
A Rendelkezésre állás értéke None azt jelzi, hogy csatlakozhat a munkamenethez. A Foglalt érték azt jelzi, hogy nem tud csatlakozni a PSSession, mert egy másik munkamenethez van csatlakoztatva.
A munkamenetek State tulajdonságának értékeiről az MSDN-kódtárban RunspaceState Enumeration című témakörben talál további információt.
A munkamenetek
Rendelkezésre állási tulajdonságának értékeiről a RunspaceAvailability Enumerationcíműtalál további információt.
Kapcsolódó hivatkozások
- Connect-PSSession (kapcsolódás PowerShell munkamenethez)
- Enter-PSSession (PowerShell parancs a távoli számítógéppel való interaktív munkamenet indítására)
- Exit-PSSession
- Get-PSSession
- Parancs Meghívása
- New-PSSession
- New-PSSessionOption
- Remove-PSSession parancs eltávolít egy PSSession-t
- PSSessions témakörről
- about_Távvezérlés
- about_Távoli_Szétkapcsolt_Munkamenetek
- a munkamenet-konfigurációk_ról