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 :

HomePath utilisateur en exécutant en tant qu'administrateur [Batch]


Sujet :

Scripts/Batch

  1. #1
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 40
    Points : 15
    Points
    15
    Par défaut HomePath utilisateur en exécutant en tant qu'administrateur
    Bonjour,

    J'aimerais faire un script qui me copie des fichiers de ma clé USB vers le HomePath du user.

    J'ai voulu faire comme ceci :

    xcopy "F:\mon dossier\dossier2\dossier3\common" "D:\%HomePath%\AppData\Roaming\dossier_de_destination\" /Y

    Cependant, je dois exécuter le script en Administrateur, mais du coup mon %HomePath% n'est plus juste... (parce que je veux qu'il copie sur celui du user).

    Vous l'aurez compris, le script est a exécuter sur différent PC avec à chaque fois un User différent.

    Une idée ?
    D'avance merci !

    PS : je suis ultra débutant dans les scripts...

  2. #2
    Membre éclairé Avatar de devilsnake88
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2013
    Messages
    453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2013
    Messages : 453
    Points : 809
    Points
    809
    Par défaut
    Salut,

    Est-ce que les machines sont sur un domaine?
    Est-ce que l'user doit être connecté quand tu lances le script?
    Est-ce qu'il faut le balancer sur tous les users de la machine?
    ________________________________________________________________
    N'oublie pas de faire une sauvegarde avant d'exécuter des scripts...
    Si j'ai ton problème, un petit fait toujours plaisir!
    ________________________________________________________________

  3. #3
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 40
    Points : 15
    Points
    15
    Par défaut
    Le script est lancé à partir de la clé USB branchée directement sur la machine en question.

    Il n'y a que un user par machine (autre que le admin).

  4. #4
    Membre éclairé Avatar de devilsnake88
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2013
    Messages
    453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2013
    Messages : 453
    Points : 809
    Points
    809
    Par défaut
    Dans ce cas voici une théorie très simple:

    Tu scannes les dossiers dans C:\Users\ et récupère les noms de dossiers
    Tu exclu les dossiers Administrateur/Invité/Public/Default
    Tu te retrouves donc avec le nom de l'utilisateur désiré.
    Il ne te reste plus qu'à copier ton truc dans: C:\Users\%Utilisateur_Extrait%\AppData\Roaming\dossier_de_destination\

    Si tu veux apprendre un peu, je te laisse faire des recherches, propose moi un code et on verra pour te corriger si besoin.
    ________________________________________________________________
    N'oublie pas de faire une sauvegarde avant d'exécuter des scripts...
    Si j'ai ton problème, un petit fait toujours plaisir!
    ________________________________________________________________

  5. #5
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 40
    Points : 15
    Points
    15
    Par défaut
    Je vais regarder à ça, merci !

    Par contre, je ne te répondrai peut-être pas tout de suite... (ce script est plus pour le "fun" qu'utile donc il n'est pas ma priorité).

  6. #6
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 40
    Points : 15
    Points
    15
    Par défaut
    J'ai regardé un peu, j'ai cru comprendre que je peu utiliser l'attribut exclude avec xcopy, cependant ça exclu les fichiers à copier et non pas la destination.

    Par scanner les répertoires dans C:\users\, tu pensais à un dir avec exclusion ? On sait faire ça ? (j'ai cherché mais pas vraiment trouvé...).

    Si je n'ai pas assez chercher, n'hésitez pas à me le dire !
    Je ne suis pas là pour avoir la réponse toute cuite comme on dit

  7. #7
    Membre éclairé Avatar de devilsnake88
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Janvier 2013
    Messages
    453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2013
    Messages : 453
    Points : 809
    Points
    809
    Par défaut
    Teste ceci et dit moi si ça te convient.
    Code bat : 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
    @echo off&cls
    setlocal EnableDelayedExpansion
    title %~n0
     
    for /D %%F in ("C:\Users\*") do (
        set "Users_Dirs=%%~nF"
        if not "!Users_Dirs!" == "Administrateur" (
            if not "!Users_Dirs!" == "Public" (
                if not "!Users_Dirs!" == "Default" (
                    set "User_Found=!Users_Dirs!"
                    xcopy "F:\mon dossier\dossier2\dossier3\common" "C:\Users\!User_Found!\AppData\Roaming\dossier_de_destination\" /Y
                )
            )
        )
    )
     
    pause
    exit

    Si la programmation t'intéresse, je te laisse tenter de traduire ce code en français
    ________________________________________________________________
    N'oublie pas de faire une sauvegarde avant d'exécuter des scripts...
    Si j'ai ton problème, un petit fait toujours plaisir!
    ________________________________________________________________

  8. #8
    Membre à l'essai
    Inscrit en
    Juillet 2009
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 40
    Points : 15
    Points
    15
    Par défaut
    Ah d'accord !

    j'ai eu un cours d'initiation à la programmation il y a quelque temps, mais j'ai vraiment un problème de logique...

    Je vais essayé ce que tu m'as gentiment donné
    Y'a une ou deux ligne que je ne connait pas/comprend pas mais Google est mon ami !

    Un grand merci !


    PS: désolé de répondre si tard...

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 12/08/2012, 13h56
  2. Réponses: 3
    Dernier message: 31/01/2011, 15h33
  3. Exécuter en tant qu'administrateur
    Par Upsilone dans le forum VB.NET
    Réponses: 1
    Dernier message: 14/08/2009, 22h13
  4. Exécuter en tant qu'administrateur
    Par muzele dans le forum Windows XP
    Réponses: 9
    Dernier message: 12/01/2008, 00h08
  5. Réponses: 0
    Dernier message: 21/10/2007, 16h44

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