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 :

Supprimer contenu répertoire sauf 1 fichier


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 141
    Par défaut Supprimer contenu répertoire sauf 1 fichier
    Bonjour,

    Je débute en script .bat et je cherche à supprimer le contenu d'un répertoire.
    Le nom du répertoire où je dois supprimer les données est Share.
    Il est situé sur un serveur, son emplacement est précisemment X:\Share

    Ce que je veux faire c'est :
    - supprimer tous les fichiers et répertoires, y compris les sous-répertoires, et les données incluses.
    - Ne laisser qu'un seul fichier nommé A lire.txt qui est à la racine.

    Une personne peut-elle m'aider SVP ?
    Merci.

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 35
    Par défaut
    Salut supprimer un repertoire et son arborescence sans demander une confirmation :
    Ceci est dans le cas ou le fichier bat et directement a la base de x:// dans le cas contraire:
    Pour le fichier a lire, ci celui-ci n'est pas dans le répertoire Share mais bien a la base de X:\ tu n'as rien a craindre, par contre s'il ce trouve a l'intérieur la tu va devoir déplacer temporairement ce fichier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    move "X:\Share\a lire.txt" "X:\a lire.txt"
    Pour en revenir voici un code qui devrait fonctionner quel que soit l'endroit sur ton pc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    move "D:\Share\a lire.txt" "D:\a lire.txt"
    rmdir /s /q X:\Share
    mkdir X:\Share
    move "D:\a lire.txt" "D:\Share\a lire.txt"
    Voila n'hésite pas en cas de soucis

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 141
    Par défaut
    Citation Envoyé par vita83 Voir le message
    Salut supprimer un repertoire et son arborescence sans demander une confirmation :
    Ceci est dans le cas ou le fichier bat et directement a la base de x:// dans le cas contraire:
    Pour le fichier a lire, ci celui-ci n'est pas dans le répertoire Share mais bien a la base de X:\ tu n'as rien a craindre, par contre s'il ce trouve a l'intérieur la tu va devoir déplacer temporairement ce fichier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    move "X:\Share\a lire.txt" "X:\a lire.txt"
    Pour en revenir voici un code qui devrait fonctionner quel que soit l'endroit sur ton pc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    move "D:\Share\a lire.txt" "D:\a lire.txt"
    rmdir /s /q X:\Share
    mkdir X:\Share
    move "D:\a lire.txt" "D:\Share\a lire.txt"
    Voila n'hésite pas en cas de soucis
    Salut.

    Merci pour ta réponse.
    Mais en fait, je ne veux pas supprimer le répertoire Share mais son contenu (fichiers, répertoires, et sous-répertoires), sans supprimer le fichier à la racine de X:\Share nommé a lire.txt.

    Comment procéder ?
    Merci.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 35
    Par défaut
    move "D:\Share\a lire.txt" "D:\a lire.txt"
    // ici on deplace D:\Share\a lire.txt a la racine de D, donc en dehors du repertoire Share

    rmdir /s /q X:\Share
    // on supprime le dossier Share, certes ...

    mkdir X:\Share
    //Mais on le reconstruit ici

    move "D:\a lire.txt" "D:\Share\a lire.txt"
    //Et on replace le fichier D:\ A lire.txt dans le dossier Share fraichement recreer

    Total : Tu as bien ton dossier Share a la base du disque, et celui-ci ne contient que le fichier A lire.txt, visiblement il s'agit du resultat attendu ou j'ai pas bien compris.

    Ps: pour des test en local j'ai mis D:\ que tu dois remplacer par la lettre de TON disque, mais je pense que tu avais compris.

    Sinon effectivement, avec un boucle FOR if/else sur les elements presents dans le dossier il y a moyen, mais moi et les boucles

Discussions similaires

  1. Supprimer un répertoire et les fichiers qu'il contient mais en plus simple
    Par ouskel'n'or dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 09/08/2019, 10h40
  2. [XL-2010] Ouvrir tous les fichiers du répertoire sauf le fichier courant
    Par Kaera dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 11/04/2013, 16h12
  3. Réponses: 3
    Dernier message: 04/08/2010, 15h30
  4. supprimer contenu répertoire
    Par zafo dans le forum ANT
    Réponses: 4
    Dernier message: 07/11/2008, 10h58
  5. Comment supprimer un répertoire ayant des fichiers
    Par pinson dans le forum Delphi
    Réponses: 2
    Dernier message: 02/11/2006, 10h52

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