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 :

Copier script d'ouverture de session Windows d'un compte vers un autre [PowerShell]


Sujet :

Scripts/Batch

  1. #1
    Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Novembre 2015
    Messages
    74
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2015
    Messages : 74
    Points : 43
    Points
    43
    Par défaut Copier script d'ouverture de session Windows d'un compte vers un autre
    Bonjour,

    Je recherche la commande powershell permettant de copier l'attribut Active Directory ScriptPath depuis un compte de référence vers un autre compte.

    J'ai trouvé quelque chose d'approchant mais je ne m'en sors pas :

    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $script = GetADUser - Identity userdereference -Properties scriptPath | ft scriptpath
    Set-ADUser -Identity newuser -ScriptPath $script
    Cette commande me renvoie une erreur de conversion.
    NB : si j'enlève | ft scriptpath de la première ligne, cela fonctionne mais cela me copie le distinguishedName de mon user de référence.

    Je n'ai pas trouvé de sujet similaire pour réaliser cette copie.
    Merci par avance pour votre aide.

  2. #2
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2012
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2012
    Messages : 281
    Points : 520
    Points
    520
    Par défaut
    salut yakalelo57

    NB : si j'enlève | ft scriptpath de la première ligne, cela fonctionne mais cela me copie le distinguishedName de mon user de référence.
    il te faut utilisé un Select-Object a la place du ft (Format-Table)

    FT (Format-Table) sert pour un affichage au format tableau. il ne doit pas être utilisé pour récupéré un membre d'un objet

  3. #3
    Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Novembre 2015
    Messages
    74
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2015
    Messages : 74
    Points : 43
    Points
    43
    Par défaut
    merci pour cette réponse.

    Je viens donc de tester :

    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $script = Get-ADUser -Identity userdereference -Properties scriptPath | Select-Object scriptpath
    Set-ADUser -Identity bidonu -ScriptPath $script
    ce coup-ci j'ai j'ai copié
    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    @{scriptpath=monscript.bat}
    comment faire pour n'avoir bien que monscript.bat au final ?

  4. #4
    Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Novembre 2015
    Messages
    74
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2015
    Messages : 74
    Points : 43
    Points
    43
    Par défaut verdict
    bon finalement j'ai trouvé d'après une autre commande que j'avais utilisé et surtout d'après votre piste

    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $script = Get-ADUser -Identity userdereference -Properties scriptPath | Select-Object -ExpandProperty scriptpath
     Set-ADUser -Identity bidonu -ScriptPath $script
    Il me manquait le -ExpandProperty.

    Là c'est tout bon

  5. #5
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2012
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2012
    Messages : 281
    Points : 520
    Points
    520
    Par défaut
    désolé pour mon erreur dans ma premiere réponse

    si tu a une version de PowerShell supérieur à la V 2, tu peut faire comme ça (ça marche peut etre en v2 d'ailleurs) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $script = (Get-ADUser -Identity $usermodele -Properties scriptPath).scriptpath
    tu peut aussi utilisé $script comme ça en gardant la premiere ligne comme avant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set-ADUser -Identity bidonu -ScriptPath $script.scriptpath
    tu a aussi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $script = Get-ADUser -Identity $usermodele -Properties scriptPath | foreach { $_.scriptpath}
    ou encore :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $script = Get-ADUser -Identity aubanner -Properties scriptPath | Select -ExpandProperty scriptPath
    en faite, parfois il y a beaucoup de méthode pour avoir le même résultat,
    il faut que tu trouve celle qui corresponde le mieux à ton script,
    ou simplement celle qui sera le plus compréhensible pour la relecture du script, que ce soit toi ou quelqu'un d'autre

    après pour l'aspect technique,
    get-aduser renvoie un objet. à travers le pipeline tu envoie cette object au select-objet ,
    le select ne garde qu'une propriété de l'object : scriptPath ; mais il conserve le format object
    apres tu peut choisir de gardé le format ou de prendre le contenue de la propriété
    dans ton cas tu peut faire $script.scriptpath ou ($_.scriptpath dans la boucle foreach) pour lire la propriété, ici une chaine de caractères "scriptpath"
    ou encore d'utilisé le -ExpandProperty du Select pour ne extraire le contenu de la propriété choisi dans l'objet

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 19/03/2007, 09h50
  2. Créer un script pour fermer une session Windows
    Par Olivierc dans le forum Windows
    Réponses: 2
    Dernier message: 24/08/2006, 13h40
  3. Temps écoulé après ouverture de session windows
    Par kasjacques dans le forum API, COM et SDKs
    Réponses: 3
    Dernier message: 02/12/2005, 08h49
  4. Détection ouverture de session Windows
    Par Atao_29 dans le forum MFC
    Réponses: 9
    Dernier message: 18/03/2005, 16h49
  5. script d'ouverture de session
    Par mougnette dans le forum Windows
    Réponses: 13
    Dernier message: 18/08/2004, 18h17

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