Lister et récupérer des informations sur les ordinateurs
Ce guide vous montre comment lister et récupérer des informations sur les ordinateurs dans Active Directory avec PowerShell.
Lister et récupérer des informations sur les ordinateurs
Résumé des commandes
# Lister tous les ordinateurs
Get-ADComputer -Filter *
# Lister les ordinateurs avec des critères spécifiques
Get-ADComputer -Filter {OperatingSystem -like "*Windows 10*"}
Get-ADComputer -Filter {Enabled -eq $true}
Get-ADComputer -Filter {LastLogonTimeStamp -gt (Get-Date).AddDays(-30)}
# Récupérer des informations détaillées sur un ordinateur
Get-ADComputer -Identity "PC-01" -Properties *
# Lister les ordinateurs dans une OU spécifique
Get-ADComputer -Filter * -SearchBase "OU=Ordinateurs,DC=lab,DC=lan"
# Compter les ordinateurs
(Get-ADComputer -Filter *).Count
# Exporter la liste des ordinateurs dans un fichier CSV
Get-ADComputer -Filter * | Export-Csv -Path "C:\Ordinateurs.csv" -NoTypeInformation
Explications détaillées
1. Lister tous les ordinateurs
La commande Get-ADComputer -Filter *
retourne tous les objets ordinateur dans Active Directory. C'est la commande de base pour commencer à travailler avec les ordinateurs.
2. Filtrer les ordinateurs
Vous pouvez utiliser différents critères de filtrage :
- Par système d'exploitation :
Get-ADComputer -Filter {OperatingSystem -like "*Windows 10*"}
- Par état (activé/désactivé) :
Get-ADComputer -Filter {Enabled -eq $true}
- Par date de dernière connexion :
Get-ADComputer -Filter {LastLogonTimeStamp -gt (Get-Date).AddDays(-30)}
3. Récupérer des informations détaillées
Pour obtenir toutes les propriétés d'un ordinateur spécifique :
Get-ADComputer -Identity "PC-01" -Properties *
4. Rechercher dans une OU spécifique
Pour lister les ordinateurs dans une unité d'organisation particulière :
Get-ADComputer -Filter * -SearchBase "OU=Ordinateurs,DC=lab,DC=lan"
5. Compter les ordinateurs
Pour obtenir le nombre total d'ordinateurs :
(Get-ADComputer -Filter *).Count
6. Exporter les données
Pour sauvegarder la liste des ordinateurs dans un fichier CSV :
Get-ADComputer -Filter * | Export-Csv -Path "C:\Ordinateurs.csv" -NoTypeInformation
Exemple pratique
Voici un script complet qui combine plusieurs de ces commandes :
# Créer un rapport sur les ordinateurs
$Rapport = @()
# Récupérer tous les ordinateurs
$Ordinateurs = Get-ADComputer -Filter * -Properties OperatingSystem, LastLogonTimeStamp, Enabled
foreach ($Ordinateur in $Ordinateurs) {
$Info = [PSCustomObject]@{
Nom = $Ordinateur.Name
Système = $Ordinateur.OperatingSystem
DernièreConnexion = $Ordinateur.LastLogonTimeStamp
État = if ($Ordinateur.Enabled) { "Actif" } else { "Inactif" }
}
$Rapport += $Info
}
# Exporter le rapport
$Rapport | Export-Csv -Path "C:\RapportOrdinateurs.csv" -NoTypeInformation
Ce script crée un rapport détaillé incluant :
- Le nom de l'ordinateur
- Le système d'exploitation
- La date de dernière connexion
- L'état de l'ordinateur (actif/inactif)