none
[Problème Résolu] script check os windows xp RRS feed

  • Question

  • Bonjour la communauté,

    je suis à la recherche d'un script pour vérifier dans mon parc toutes les postes en windows xp.
    ils vont être supprimé de l'ad les comptes ordinateurs pour se qui ne se sont pas migrer en windows10.

    C'est pour éviter un monter de demande de migration que j'aurai voulu avoir un pré check des pcs en windows xp.

    merci par avance de votre aide


    mardi 16 mars 2021 10:12

Toutes les réponses

  • bon j'ai pu trouver une commande très LIGHT

    Get-ADComputer -Filter {OperatingSystem -like '*Windows XP*'} > c:\temp\monfichier.csv

    Celui-ci va browser l’AD pour vous chercher la version windows xp de chaque site. Voici la version un peu plus charger avec divers informations et spécifiquement sur un OU d’un site.

     $result = Get-adcomputer -filter * -properties * -searchbase "OU=MONOU, DC=xxxxxxxxx,DC=xxxxx,DC=xxxxxxx,DC=xxxxxxx" | where {$_.operatingsystem -like "*Xp*"}

    $result | export-Csv c:/temp/monfichier.csv -delimiter ";" -notypeinformation

    Voilà en espérant que ceci pourra vous aider !!

    A+


    mardi 16 mars 2021 15:48
  • bonsoir Lolochan130

    Si tes 2 exemples de codes fonctionnent sans pb, j'ai plusieurs remarques les concernant :

    • Dans la 1ère : Mais pourquoi, oui pourquoi passer des commandes DOS legacy dans une ligne de commande en Powershell  ? Ca me sidère toujours. ">", c'est du DOS, pas du powershell ! Un Out-File autait été plus approprié. Que tu l'utilises personnellement afin d'économiser tes phalanges, pourquoi pas, mais ce n'est pas un code à partager.
    • Dans la 2nde : Pourquoi vouloir à tout prix utiliser le paramètre -Properties avec la valeur joker *, et ainsi demander toutes les propriétés de tous les objets collectés par Get-ADComputer ? Ha, c'était pour ajouter la propriété OperatingSystem afin de filtrer dessus après le pipeline, mais il suffisait de passer -Properties OperatingSystem, cela était suffisant.
    • Toujours dans le 2nde : Il y a une formule bien connue qui s'exprime ainsi "Filter Left, format Right". Tu filtres à droite avec le Where (ou plutôt Where-Object, Where n'est qu'un Alias de la cmdlet. ). Tu aurais du filtrer avec -Filter à gauche donc. Certes, la syntaxe est moins "sympatique", mais quand tu requêtes sur un gros annuaire, la différence est là :  requête plus rapide à exécuter, moins consommatrice de RAM et de CPU.

    J'espère que cela sera utile

    Cordialement

    Olivier

    mardi 16 mars 2021 20:23