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 :

Créer un sous-dossier s'il n'existe pas


Sujet :

Scripts/Batch

  1. #1
    Candidat au Club
    Homme Profil pro
    Secrétaire administratif
    Inscrit en
    Février 2024
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Secrétaire administratif
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2024
    Messages : 3
    Points : 2
    Points
    2
    Par défaut Créer un sous-dossier s'il n'existe pas
    Bonjour.

    Je débute en batch, et j'aurai voulu pour faciliter mon travail au bureau créer un script qui me permette dans un dossier d'utilisateurs, de créer des sous-dossiers s'ils n'existent pas.

    Concrètement, cela donne :

    Répertoire : C:\Ressources Humaines\Personnels\Non permanents\Invités\"noms des utilisateurs" "prénom des utilisateurs"

    Ce que je souhaite est normalement relativement simple, c'est de vérifier pour chaque dossier d'users s'il existe les sous-répertoires "Administratif" et "Mission" de créé, et si ce n'est pas le cas, qu'il me créé le ou les sous-dossiers manquants.

    J'ai tenté de faire le script ci-dessous mais cela ne marche pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    if not exist "C:\Ressources Humaines\Personnels\Non permanents\Invités\*\Administratif\" ( echo Création du dossier Administratif
    mkdir "C:\Ressources Humaines\Personnels\Non permanents\Invités\*\Administratif" )
    echo Sauvegarde vers le dossier  du Administratif
    
    if not exist "C:\Ressources Humaines\Personnels\Non permanents\Invités\*\Missions\" ( echo Création du dossier Missions
    mkdir "C:\Ressources Humaines\Personnels\Non permanents\Invités\*\Missions" )
    echo Sauvegarde vers le dossier du Missions
    Est-ce que quelqu'un peut m'aider ?

    Je vous remercie par avance.

  2. #2
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 201
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 201
    Points : 5 795
    Points
    5 795
    Par défaut
    Bonjour

    Voici

    Code batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    @echo off
    cls
     
    FOR /f "tokens=* delims=" %%a IN ('dir /AD /B "C:\Ressources Humaines\Personnels\Non permanents\Invit‚s" 2^>nul') DO (
    	md "%%~dpnxa\Administratif" 2>nul && echo Cr‚ation du dossier "%%~dpnxa\Administratif"
    	md "%%~dpnxa\Missions" 2>nul && echo Cr‚ation du dossier "%%~dpnxa\Missions"
    )
     
    pause

  3. #3
    Candidat au Club
    Homme Profil pro
    Secrétaire administratif
    Inscrit en
    Février 2024
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Secrétaire administratif
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2024
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Hello ericlm128 et merci pour la tentative de réponse.

    Malheureusement, le batch ne fonctionne pas : j'ai un dossier test où je n'ai pas les sous-dossiers Administratif et Missions de créé pour vérifier et les dossiers ne se créent pas.
    J'ai aussi l'impression que le batch ne test même pas les dossiers, mais cela reste que mon impression...

  4. #4
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 201
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 201
    Points : 5 795
    Points
    5 795
    Par défaut
    Ce script fonctionne pourtant chez moi.

    Tu peux tenter de renommer le dossier "Invités" en "Invites" et modifier le script en conséquence pour test.
    Le batch n'aime pas trop les accents.

    Vérifie bine le chemin aussi

    Code batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    @echo off
    cls
     
    FOR /f "tokens=* delims=" %%a IN ('dir /AD /B "C:\Ressources Humaines\Personnels\Non permanents\Invites" 2^>nul') DO (
    	md "%%~dpnxa\Administratif" 2>nul && echo Creation du dossier "%%~dpnxa\Administratif"
    	md "%%~dpnxa\Missions" 2>nul && echo Creation du dossier "%%~dpnxa\Missions"
    )
     
    pause

    Oui je ne vérifie pas l'existence du dossier, si il existe il ne fait rien sinon il le crée

  5. #5
    Candidat au Club
    Homme Profil pro
    Secrétaire administratif
    Inscrit en
    Février 2024
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Secrétaire administratif
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2024
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Re ericlm128.

    OK, du coup, là on avance :

    J'ai renommé le répertoire "Invités" en Invites" et ai aussi modifié le batch pour "cr,ation des dossiers..." en "creation des dossiers...". Du coup il me créé bien les sous-dossiers Administration et mission dans les dossiers des 200 invités, sauf que...

    Seul petit bémol, avec ton script, il me créé aussi dans le dossier "Invites" les sous-dossiers "Administration" et "Missions", du coup j'ai dû rajouter à la fin du batch deux lignes pour auto-delete les deux sous-dossiers créés en question.

    Merci, ça m'a bien aidé, je vais pouvoir aussi le réadapter à d'autres dossiers qui sont dans le même contexte.

  6. #6
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 201
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 201
    Points : 5 795
    Points
    5 795
    Par défaut
    Très bien.

    Étonnant, je ne constate pas la création de ces dossiers à la racine chez moi.

    Concernant le "é" dans le nom de dossier je voulais confirmer que cela était bien la cause.
    Je suppose donc que ton fichier .bat n'était pas en encodage ANSI mais surement en UTF-8.
    Tu peux remettre ton dossier avec "é" et mon script d'origine si ton script est encodé en ANSI.

    A+

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

Discussions similaires

  1. [Batch] Copie d'un sous-dossier existant ou non
    Par lordofrings33 dans le forum Scripts/Batch
    Réponses: 19
    Dernier message: 26/04/2019, 09h16
  2. Le sous-dossier "model" n'existe pas dans TreeTagger/bin
    Par chercheur-h dans le forum API standards et tierces
    Réponses: 0
    Dernier message: 16/12/2018, 10h42
  3. Créer un dossier s'il n'existe pas
    Par kumo dans le forum Débuter
    Réponses: 13
    Dernier message: 11/02/2008, 15h24
  4. Tester l'existence d'un dossier dans plusieurs sous dossier
    Par titeZ dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 29/01/2008, 21h30
  5. Creer un dossier SI il n existe pas
    Par Slumpy dans le forum VB.NET
    Réponses: 2
    Dernier message: 25/04/2007, 18h07

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