Question trouver le (les) postes d'un utilisateur

Plus d'informations
il y a 13 ans 1 mois #14606 par Matthew BETTON
De rien ;)

A bientôt :P

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 3 semaines #14671 par Matthew BETTON
Bonjour,

Quelques corrections apportées :

[code:1]
Function Get-Sessions {
[CmdletBinding()]
param(
[parameter(Mandatory=$true, ValueFromPipeline=$true, ValueFromPipelineByPropertyName=$true)]
[Alias(\"Name\"«»)]
[String[]]$ComputerName,
[parameter(Mandatory=$false)]
[System.Management.Automation.PSCredential]$Credential = [System.Management.Automation.PSCredential]::Empty
)

process{
foreach($c in $ComputerName){
try{
Write-Debug \"Contrôle si la machine '$c' est joignable\"
if(Test-Connection -ComputerName $c -Count 1 -Quiet){
$proc = $null
Write-Debug \"Récupération des process 'explorer.exe' sur '$c'\"
$proc = Get-WmiObject -Class win32_process -ComputerName $c -Credential $Credential -Filter \"Name = 'explorer.exe'\" -ErrorAction Stop

ForEach ($p in $proc) {
$UserName = \"$(($p.GetOwner()).Domain)\$(($p.GetOwner()).User)\"
Write-Debug \"'$UserName' a une session ouverte (Shell) sur '$c'\"
New-Object PSObject -Property @{ComputerName=$c;UserSession=$UserName}
}
}
else{
Write-Warning \"'$c' est injoignable\"
}
}
catch{
Write-Error \"Une erreur s'est produite lors de la récupération des sessions (Shell) sur '$c' : $($_.Exception.Message)\"
}
}
}
}

cls
$Credential = Get-Credential Domaine\Login

Get-Sessions -ComputerName MonServeur -Credential $Credential

Get-Sessions -ComputerName MonServeur10 MonServeur20 -Credential $Credential

\"Machine1\", \"Machine2\", \"Machine3\" | Get-Sessions -Credential $Credential

Get-Sessions -ComputerName localhost -Credential $Credential -ErrorAction SilentlyContinue
[/code:1]

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.032 secondes
Propulsé par Kunena