Remove-PSSession
Ferme une ou plusieurs sessions Windows PowerShell (PSSession).
Syntaxe
Remove-PSSession [[-ComputerName] <string[]>] [-Confirmer] [-WhatIf] [<CommonParameters>]
Remove-PSSession [-Id] <Int32[]> [-Confirmer] [-WhatIf] [<CommonParameters>]
Remove-PSSession [-InstanceId <Guid[]>] [-Confirmer] [-WhatIf] [<CommonParameters>]
Remove-PSSession [-Name <string[]>] [-Confirmer] [-WhatIf] [<CommonParameters>]
Remove-PSSession [-Session] <PSSession[]> [-Confirmer] [-WhatIf] [<CommonParameters>]
Description
L'applet de commande Remove-PSSession ferme les sessions Windows PowerShell (PSSession) dans la session active. Elle arrête toutes les commandes qui s'exécutent dans les sessions PSSession, met fin à la session PSSession et libère les ressources que la session PSSession utilisait. Si la session PSSession est connectée à un ordinateur distant, Remove-PSSession ferme également la connexion entre les ordinateurs locaux et distants.
Pour supprimer une session PSSession, entrez le paramètre Name, ComputerName, ID ou InstanceID de la session.
Si vous avez enregistré la session PSSession dans une variable, l'objet session reste dans la variable, mais l'état de la session PSSession est « Fermé ».
Paramètres
-ComputerName <string[]>
Ferme les sessions PSSession connectées aux ordinateurs spécifiés. Les caractères génériques sont autorisés.
Tapez le nom NetBIOS, une adresse IP ou un nom de domaine complet d'un ou de plusieurs ordinateurs distants. Pour spécifier l'ordinateur local, tapez le nom de l'ordinateur, « localhost » ou un point (.).
Obligatoire ? |
false |
Position ? |
1 |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
true (ByPropertyName) |
Accepter les caractères génériques ? |
true |
-Id <Int32[]>
Ferme les sessions PSSession portant les ID spécifiés. Tapez un ou plusieurs ID (séparés par des virgules) ou utilisez l'opérateur de plage (..) pour spécifier une plage d'ID.
Un ID est un entier qui identifie de manière unique la session PSSession dans la session active. Il est plus facile à mémoriser et à taper que l'InstanceId, mais est seulement unique dans la session active. Pour rechercher l'ID d'une session PSSession, utilisez Get-PSSession sans paramètres.
Obligatoire ? |
true |
Position ? |
1 |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
true (ByPropertyName) |
Accepter les caractères génériques ? |
false |
-InstanceId <Guid[]>
Ferme les sessions PSSession portant les ID d'instance spécifiés.
L'ID d'instance est un GUID qui identifie de manière unique une session PSSession dans la session active. L'InstanceID est unique, même quand plusieurs de vos sessions s'exécutent sur un ordinateur unique.
L'InstanceID est stocké dans la propriété InstanceID de l'objet qui représente une session PSSession. Pour rechercher l'InstanceID des sessions PSSession dans la session active, tapez « get-pssession | Format-Table Name, ComputerName, InstanceId ».
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
true (ByPropertyName) |
Accepter les caractères génériques ? |
false |
-Name <string[]>
Ferme les sessions PSSession comportant les noms conviviaux spécifiés. Les caractères génériques sont autorisés.
Étant donné que le nom convivial d'une session PSSession n'est pas nécessairement unique, lorsque vous employez le paramètre Name, utilisez également le paramètre WhatIf ou Confirm dans la commande Remove-PSSession.
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
true (ByPropertyName) |
Accepter les caractères génériques ? |
true |
-Session <PSSession[]>
Spécifie les objets session des sessions PSSession à fermer. Entrez une variable qui contient les sessions PSSession ou une commande qui crée ou obtient les sessions PSSession, telle qu'une commande New-PSSession ou Get-PSSession. Vous pouvez également diriger un ou plusieurs objets session vers Remove-PSSession.
Obligatoire ? |
true |
Position ? |
1 |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
true (ByValue, ByPropertyName) |
Accepter les caractères génériques ? |
false |
-Confirmer
Vous invite à confirmer l'exécution de la commande.
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
false |
-WhatIf
Décrit le résultat que vous obtiendriez en exécutant la commande, sans réellement l'exécuter.
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
false |
<CommonParameters>
Cette applet de commande prend en charge les paramètres courants : -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer et -OutVariable. Pour plus d'informations, consultez about_Commonparameters.
Entrées et sorties
Le type d'entrée est le type des objets que vous pouvez diriger vers l'applet de commande. Le type de retour est le type des objets que l'applet de commande retourne.
Entrées |
System.Management.Automation.Runspaces.PSSession Vous pouvez diriger un objet session vers Remove-PSSession. |
Sorties |
Aucun Remove-PSSession ne retourne aucun objet. |
Remarques
Le paramètre ID est obligatoire. Vous ne pouvez pas taper « remove-pssession » sans paramètres. Pour supprimer toutes les sessions PSSession de la session active, tapez « get-pssession | remove-pssession ».
Une session PSSession utilise une connexion permanente avec un ordinateur distant. Créez une session PSSession pour exécuter une série de commandes qui partagent des données. Pour plus d'informations, consultez about_PSSessions.
Les sessions PSSession sont spécifiques à la session active. Lorsque vous mettez fin à une session, les sessions PSSession que vous avez créées dans cette session sont fermées de force.
Exemple 1
C:\PS>remove-pssession -id 1, 2
Description
-----------
Cette commande supprime les sessions PSSession correspondant aux ID 1 et 2.
Exemple 2
C:\PS>get-pssession | remove-pssession
C:\PS> remove-pssession -session (get-pssession)
C:\PS> $s = get-pssession
C:\PS> remove-pssession -session $s".
Description
-----------
Ces commandes suppriment toutes les sessions PSSession de la session active. Bien que les trois formats de commande aient un aspect différent, ils ont le même effet.
Exemple 3
C:\PS>$r = get-pssession -computername Serv*
$r | remove-pssession
Description
-----------
Ces commandes ferment les sessions PSSession connectées aux ordinateurs dont les noms commencent par « Serv ».
Exemple 4
C:\PS>get-pssession | where {$_.port -eq 90} | remove-pssession
Description
-----------
Cette commande ferme les sessions PSSession connectées au port 90. Vous pouvez utiliser ce format de commande pour identifier les sessions PSSession par des propriétés autres que ComputerName, Name, InstanceID et ID.
Exemple 5
C:\PS>get-pssession | ft computername, instanceID -auto
ComputerName InstanceId
------------ ----------------
Server01 875d231b-2788-4f36-9f67-2e50d63bb82a
localhost c065ffa0-02c4-406e-84a3-dacb0d677868
Server02 4699cdbc-61d5-4e0d-b916-84f82ebede1f
Server03 4e5a3245-4c63-43e4-88d0-a7798bfc2414
TX-TEST-01 fc4e9dfa-f246-452d-9fa3-1adbdd64ae85
C:\PS> remove-pssession -InstanceID fc4e9dfa-f246-452d-9fa3-1adbdd64ae85
Description
-----------
Ces commandes montrent comment fermer une session PSSession selon son ID d'instance (RemoteRunspaceID).
La première commande utilise l'applet de commande Get-PSsession pour obtenir les sessions PSSession dans la session active. Elle fait appel à un opérateur de pipeline (|) pour envoyer les sessions PSSession à l'applet de commande Format-Table (alias : ft), qui présente leurs propriétés ComputerName et InstanceID sous forme de tableau. Le paramètre AutoSize (« auto ») compresse les colonnes pour l'affichage.
À partir de l'affichage résultant, l'administrateur peut identifier la session PSSession à fermer et copier-coller l'InstanceID de cette session dans la deuxième commande.
La deuxième commande utilise l'applet de commande Remove-PSSession pour supprimer la session PSSession avec l'ID d'instance spécifié.
Exemple 6
C:\PS>function EndPSS { get-pssession | remove-pssession }
Description
-----------
Cette fonction supprime toutes les sessions PSSession de la session active. Après avoir ajouté cette fonction à votre profil Windows PowerShell, pour supprimer toutes les sessions, tapez simplement « endpss ».
Voir aussi
Concepts
about_PSSessions
about_Remote
New-PSSession
Get-PSSession
Enter-PSSession
Exit-PSSession
Invoke-Command