IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

Imbrication des groupes AD et export vers Excel


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2018
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2018
    Messages : 15
    Par défaut Imbrication des groupes AD et export vers Excel
    Bonjour à tous,

    But du script connaître les membres des groupes de domaine local sur les machines de mes stagiares sur Win 2008 SVR R2...

    Voici mon problème :
    Je voudrai afficher les membres des groupes de domaine local.Si ce sont des groupes globaux on les affiche, si ce sont des utilisateurs (je sais mormalement on ne devrait pas trouver d'users dans les DL) on les affiche ailleurs dans Excel.
    1° étape je trouve toutes les dl de mon domaine et les envoie sur un eligne dans excel : RAS ça c'est fait...
    Nom : vu excel.png
Affichages : 646
Taille : 101,0 Ko

    2° étape je cherche les membres direct de ces DL et je veux les afficher en dessous, voici une image fictive du résultat attendu :pour l'instant pas top j'arrive pas à traiter chaque DL pour trouver les membres..
    Nom : resultat attendu.png
Affichages : 629
Taille : 120,8 Ko

    Mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    # Affiche les Groupes GG - DL
    
    # On se positionne sur la 6° feuille de notre document Excel
    $Sheet = $WorkBook.Worksheets.Item(6)
    
    $ligne = 4
    $col= 2
    
    $Sheet.Cells.Item($ligne-2,$col+1) = "Liste des Groupes GG - DL"
    
    #fonction mise en forme dans excel
    mise-en-forme-entete-gg-dl
    # on fusionne les cellules 2.1 ==> 2.3 
    $Range = $Sheet.Range($Sheet.Cells.Item(2,1),$Sheet.Cells.Item(2,3))
    
    $Range.MergeCells = $true
    
    #liste les DL en enlevant le dossier "Users" et les affiche verticalement
    
    $tab = @()
    
    
    $ou = Get-ADOrganizationalUnit -filter * -SearchScope OneLevel | sort-Object
    Foreach ( $k in $ou)
    {
        if ($k.name -ne $null -and $k.name -ne "Domain Controllers")
        {
    
        $x = Get-ADGroup -Filter { GroupScope -Eq "domainlocal"} -SearchBase $k.DistinguishedName | sort-object
            foreach ($l in $x)
            {
                if ($l.name -ne $null)
                {
                $tab +=  $l.name
                $Sheet.Cells.Item($ligne,$col) = $l.name
                mise-en-forme-donnes
                $col++
                }
            }
        }
    }
    
    # on cherche les membres des DL ..
    
    $ligneenfant = 5
    $colenfant = 2
    
    write-host $tab
    ForEach ( $i in $tab)
    {
    $enfantsdl = Get-ADGroupMember -Identity $i | sort-object
    write-host $enfantsdl
        foreach( $z in $enfantsdl)
        {
            if ($z.name -ne $null)
            {
            $Sheet.Cells.Item($ligneenfant,$colenfant) = $z.name
            
            $ligneenfant++
            $colenfant++
            
            }
    }
    }
    la partie qui déconne un peu se trouve dans "# on cherche les membres des DL .." ..

    merci pour vos réponses..

  2. #2
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2018
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2018
    Messages : 43
    Par défaut
    Salut, pour simplifier tout ça, ne serait-il pas plus simple de créer un objet par DL et d'y ajouter chaque membre? Ensuite tu le mets en forme dans excel et ça se fait même quasi tout seul étant donné qu'il y a un objet par groupe.

    L'idée en algo serait:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Je créer un objet AllDL
    Récupérer la liste des DL et la stocker dans une variable{
    Pour chaque DL{
    Nouvel-objet avec le nom de la DL
    On ajoute tous les membres à la DL
    On ajoute += le nouvel objet à AllDL
    }
    }
    On se sert de AllDL pour mettre en forme tout ça sur Excel
    Je ne sais pas si c'est clair, mais ça me paraît plus simple ainsi ?

  3. #3
    Membre averti
    Femme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2018
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2018
    Messages : 15
    Par défaut
    salut MRTRZ,

    merci d'avoir répondu..

    Oki je teste ça..même si je débute en Powershell...

  4. #4
    Membre averti
    Femme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2018
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2018
    Messages : 15
    Par défaut
    Re

    désolé jen vois pas en quoi créer un objet m'aiderait dans cette tâche..
    j'ai commencé un script mais je suis vite perdu .. je manque de connaissances je pense.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    #je crée un objet (je ne sais pas si c'est le bon que j'ai crée il existe plusieurs types ..)
    $alldl = New-Object System.Collections.ArrayList
    
    
    
    #je récupère mes dl a partir de tous mes OU et je les stocke dans $list (j'enleve l'OU DOmain Controllers)
    $ou = Get-ADOrganizationalUnit -filter * -SearchScope OneLevel | sort-Object
    Foreach ( $k in $ou)
    {
        if ($k.name -ne $null -and $k.name -ne "Domain Controllers")
        {
    
        $x = Get-ADGroup -Filter { GroupScope -Eq "domainlocal"} -SearchBase $k.DistinguishedName | sort-object
            foreach ($l in $x)
            {
                if ($l.name -ne $null)
                {
                $list +=  $l.name
                $Sheet.Cells.Item($ligne,$col) = $l.name
                }
            }
        }
    }
    
    # on cherrche les membres des DL ..
    
    
    ForEach ( $i in $list)
    {
    
        foreach( $z in $enfantsdl)
        {
            if ($z.name -ne $null)
            {
            $alldl = $z.name
            $membres = Get-ADGroupMember -Identity $alldl | sort-object
            # pff .. perdu la je sais plus quoi faire..
            }
    }
    }

Discussions similaires

  1. [AC-2002] ETAT: export vers excel/word, perte des graphiques
    Par Kriss63 dans le forum IHM
    Réponses: 1
    Dernier message: 04/03/2010, 08h43
  2. Réponses: 5
    Dernier message: 30/09/2009, 19h51
  3. Exporter Des Donnees De Tables Oracle Vers Excel ?
    Par Djene dans le forum Administration
    Réponses: 10
    Dernier message: 13/06/2009, 19h02
  4. Réponses: 6
    Dernier message: 07/01/2009, 11h17
  5. Réponses: 5
    Dernier message: 25/04/2006, 16h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo