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 :

DOS realisation d'un cleaner


Sujet :

Scripts/Batch

  1. #1
    Modérateur
    Avatar de Overcrash
    Homme Profil pro
    Architecte Logiciel et responsable CRM (Salesforce)
    Inscrit en
    Mai 2008
    Messages
    1 254
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Architecte Logiciel et responsable CRM (Salesforce)
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 254
    Par défaut DOS realisation d'un cleaner
    bonjour
    j'essaye actuellement de réaliser une sorte de cleaner qui m'effacerais tous les fichier que me crée automatique visual C , mon disque dur du bahut ne fais que 10mo donc faut que j'optimise un max, actuellement j'ai réussi a faire ce genre de commande,

    ceci m'efface tous les fichiers .opt dans tout les répertoires

    j'ai réussi a afficher un menu :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    echo.
    echo ....effacer......Taper 1
    echo ....quitter ......Taper 2
    echo.
    ensuite je n'arrive pas a donner le choix a l'utilisateur la commande choice n'existe plus .

    Il faudrait aussi que j'arrive a supprimer un répertoire complet (le Debug)
    dans tout le disque donc il faudrait qu'il parcoure toute l'arborescence.

    Donc voila plusieurs problèmes se pose a moi, après une recherche depuis trois jours sur le net je m'adresse a vous.

    1) comment déclarer une variable? (je ss pas sur que ce soir )
    2)comment affecter une variable via le clavier? une sorte de scanf.

    Ces questions était pour le choix

    Maintenant j'aimerai savoir comment supprimer un répertoire avec tous ses fichier dans tout le disque .
    la j'en ai aucune idée parce que rd,rmdir... ne supprime que dans le répertoire courant.

    Merci de votre aide
    Over
    ---
    Overcrash

    Je ne lis pas les codes qui ne sont pas indentés.
    Merci de les messages utiles en cliquant en bas à droite du message

    Bloqué par le firewall pour accéder au chat ? Essayez avec l'adresse en direct : http://87.98.168.209/

  2. #2
    Membre averti
    Inscrit en
    Octobre 2008
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 38
    Par défaut
    Je ne savais pas ce que tu voulais faire comme menu, j'ai donc créé une ligne pour les opt et une ligne pour les Debug
    Si tu veux que ca efface les fichiers opt et les repertoire Debug en tapant 1, l'adaptation est tres facile

    Le fichier est a mettre dans la racine de ton disque dur lycée

    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
    @Echo off
    
    :Menu
    echo.
    echo   effacer .opt  : Taper 1
    echo   effacer Debug : Taper 2
    echo   quitter       : Taper 3
    echo.
    set /p Choix= :
    
    if %choix% == 1 (
    					del /s  *.opt
    					set choix=
    					goto Menu
    			 )
    				
    if %choix% == 2 (
    					dir /a:d /s /b .\ |sort /r >%temp%\list-tri.txt 
    					for /f "delims=" %%a in ('type "%temp%\list-tri.txt" ^|findstr /i /r "Debug"') do rd /s /q "%%a"  
    					del "%temp%\list-tri.txt" 
    					set choix=
    					goto Menu
    			 )
    				
    if %choix% == 3 (
    					set choix=
    					goto:eof
    			  )

  3. #3
    Modérateur
    Avatar de Overcrash
    Homme Profil pro
    Architecte Logiciel et responsable CRM (Salesforce)
    Inscrit en
    Mai 2008
    Messages
    1 254
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Architecte Logiciel et responsable CRM (Salesforce)
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 254
    Par défaut
    merci beaucoup avec un peu de retard je test ca de suite
    ---
    Overcrash

    Je ne lis pas les codes qui ne sont pas indentés.
    Merci de les messages utiles en cliquant en bas à droite du message

    Bloqué par le firewall pour accéder au chat ? Essayez avec l'adresse en direct : http://87.98.168.209/

  4. #4
    Modérateur
    Avatar de Overcrash
    Homme Profil pro
    Architecte Logiciel et responsable CRM (Salesforce)
    Inscrit en
    Mai 2008
    Messages
    1 254
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Architecte Logiciel et responsable CRM (Salesforce)
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 254
    Par défaut
    dans ma précipitation et mon enthousiasme j'en ai perdu mon latin et ai oublier de vous demander de m'expliquer cette ligne en détails si cela ne vous gène pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    : dir /a:d /s /b .\ |sort /r >%temp%\list-tri.txt 
    					for /f "delims=" %%a in ('type "%temp%\list-tri.txt" ^|findstr /i /r "Debug"') do rd /s /q "%%a"  
    					del "%temp%\list-tri.txt"

    Merci
    Cordialement Ludovic
    ---
    Overcrash

    Je ne lis pas les codes qui ne sont pas indentés.
    Merci de les messages utiles en cliquant en bas à droite du message

    Bloqué par le firewall pour accéder au chat ? Essayez avec l'adresse en direct : http://87.98.168.209/

  5. #5
    Membre averti
    Inscrit en
    Octobre 2008
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 38
    Par défaut
    Tout d'abord il me faut la liste complète des répertoire de ton disque perso à scanner (option /A: D) avec leur nom de chemin absolu et nom complet ( option /b et /s)
    Afin de les traiter plus facilement je demande a trier le résultat dans l'ordre alphabétique décroissant ( ca permet de traiter les répertoire de plus bas niveau et de remonter par la suite). Le tout est stocké dans un fichier texte dans un répertoire temporaire.
    Pour mieux comprendre, le fichier a cette tête
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Z:\Projet2\Version2
    Z:\Projet2\Version1\Debug
    Z:\Projet2\Version1
    Z:\Projet2
    Z:\Projet1\Version3\Debug
    Z:\Projet1\Version3
    Z:\Projet1\Version2
    Z:\Projet1\Version1
    Z:\Projet1
    Par l'aide de ce fichier texte et d'une boucle for je scrupte chaque ligne et cherche les ligne où un répertoire "Debug" existe, s'il le trouve, il est supprimé ainsi que son contenu

    Une fois le scan fini, le fichier texte est supprimé.

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

Discussions similaires

  1. Probleme de socket : realisation mini msn via fenetre dos
    Par HaaRt dans le forum Développement
    Réponses: 3
    Dernier message: 24/03/2007, 17h09
  2. [VB6] [Système] Récupérer le contenu d'une fenêtre DOS
    Par Nounours666 dans le forum VB 6 et antérieur
    Réponses: 16
    Dernier message: 18/11/2004, 16h38
  3. convertir un nom long (win32) en format dos (8+3)
    Par kylekiller dans le forum Langage
    Réponses: 2
    Dernier message: 30/08/2002, 13h34
  4. Masquer le curseur en mode MS-DOS
    Par Alex120 dans le forum C
    Réponses: 2
    Dernier message: 10/07/2002, 09h30
  5. Format d'un exe pour DOS et pour Windows
    Par Alfhiger dans le forum Assembleur
    Réponses: 4
    Dernier message: 12/06/2002, 11h57

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