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 :

Recherche et suppression de fichiers windows 2003


Sujet :

Scripts/Batch

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 31
    Points : 16
    Points
    16
    Par défaut Recherche et suppression de fichiers windows 2003
    Bonjour,

    Je souhaite créer un fichier Batch qui me permet de:
    -Faire une recherche de répertoire (inetaccelerator) dans les profils itinérants de mon serveur windows 2003
    - de supprimer ce répertoire si il existe

    En fait ce répertoire remonte avec le profil de l'utilisateur et se trouve dans application data.
    Il s'agit d'un repertoire qui contient un exécutable (inetaccelerator.exe) qui est un virus Troj_Ransom.bnx qui n'est pas supprimé par les antivirus sur les postes. Ce virus est une variante du virus dit "Gendarmerie"

    merci pour votre aide

  2. #2
    Membre averti Avatar de plopi
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Mars 2011
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2011
    Messages : 191
    Points : 306
    Points
    306
    Par défaut
    Bonjour,

    Voici une méthode pour ce genre d'actions. En cadeau logging dans un fichier pour simplifier la post-analyse.


    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
    29
    30
    31
    32
    33
    34
    35
    @echo off
    
    
    set profiles_path=CheminDesProfilsUtilisateurs
    set folder_path=CheminDuReperoireASupprimer :: Attention après "Documents and settings\NomDuProfiUtilisateur\" 
    
    set list_file=Chemin\list_file.txt
    set file_log=Chemin\script_log.txt
    
    
    
    echo.  >> %file_log%
    echo ------------------------- >> %file_log%
    echo.  >> %file_log%
    echo START CLEANING LOOP --%date%-%time%>> %file_log%
    echo.  >> %file_log%
    
    :: Creation liste Profils Utilisateurs
    
    dir %profiles_path%\*USER* /b /a:d > %list_file%
    
    
    :: Boucle de suppression 
    
    for /f %%i in (%list_file%) do ( 
    
    if exist "%profiles_path%\%%i\%folder_path%" (rmdir /q /s "%profiles_path%\%%i\%folder_path%" & echo --%date%-%time% USER:%%i FolderDelete >> %file_log%) else (echo --%date%-%time% USER:%%i NoAction >> %file_log%)
    
    
    ) 
    
    
    echo.  >> %file_log%
    echo END CLEANING LOOP --%date%-%time%>> %file_log%

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 31
    Points : 16
    Points
    16
    Par défaut
    Merci pour le batch

    je ne suis pas spécialiste dans le développement, mais peux tu m'interpréter le script et notamment la ligne

    dir %profiles_path%\*USER* /b /a:d > %list_file%

    et

    if exist "%profiles_path%\%%i\%folder_path%" (rmdir /q /s "%profiles_path%\%%i\%folder_path%" & echo --%date%-%time% USER:%%i FolderDelete >> %file_log%) else (echo --%date%-%time% USER:%%i NoAction >> %file_log%)

    merci

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 31
    Points : 16
    Points
    16
    Par défaut
    Voici le script avec les éléments modifiés, mais ça ne marche pas comme je veux, si tu peux m'aider.

    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
    29
    30
    31
    32
    33
    34
    35
    @echo off
    
    
    set profiles_path=c:\documents and settings
    set folder_path=c:\documents and settings\%user%\inetaccelerator :: Attention après "Documents and settings\NomDuProfiUtilisateur\" 
    
    set list_file=Chemin\list_file.txt
    set file_log=Chemin\script_log.txt
    
    
    
    echo.  >> %file_log%
    echo ------------------------- >> %file_log%
    echo.  >> %file_log%
    echo START CLEANING LOOP --%date%-%time%>> %file_log%
    echo.  >> %file_log%
    
    :: Creation liste Profils Utilisateurs
    
    dir %profiles_path%\*USER* /b /a:d > %list_file%
    
    
    :: Boucle de suppression 
    
    for /f %%i in (%list_file%) do ( 
    
    if exist "%profiles_path%\%%i\%folder_path%" (rmdir /q /s "%profiles_path%\%%i\%folder_path%" & echo --%date%-%time% USER:%%i FolderDelete >> %file_log%) else (echo --%date%-%time% USER:%%i NoAction >> %file_log%)
    
    
    ) 
    
    
    echo.  >> %file_log%
    echo END CLEANING LOOP --%date%-%time%>> %file_log%

  5. #5
    Membre averti Avatar de plopi
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Mars 2011
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2011
    Messages : 191
    Points : 306
    Points
    306
    Par défaut
    Oui c'est normal que ça ne marche pas et c'est pour ça que j'avais mis une ligne de commentaire explicatif.

    c'est la suite du chemin du répertoire après C:\Documents and settings\Utilisateur\...... qui doit être supprimé

    Pour faire simple, peut tu fournir le chemin complet depuis la racine du dossier qui doit être traité ?

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 31
    Points : 16
    Points
    16
    Par défaut
    Bon j'ai fait une batterie de test et quelques soucis.

    pour vérifier le script j'ai créer des répertoires à la main

    repertoire "profil" dans c:\ -> (c:\profil)
    dans profil j'ai crée un repértoire "user1" et "user2"-> (c:\profil\user1 et c:\profil\user2)
    dans user1 et user2 j'ai crée un rep "inet" -> (c:\profil\user1\inet)

    Le but est donc de supprimer le repertoire "inet" dans user1 et user2

    voici le script modifié (j'ai enlevé quelques éléments qui ne sont pas utiles pour l'instant je pense)

    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
    29
    30
    31
    32
    33
    34
    35
    @echo off
    
    
    set profiles_path= C:\profil
    set folder_path=c:\profil\user1\inet :: Attention après "Documents and settings\NomDuProfiUtilisateur\" 
    
    set list_file=c:\list_file.txt
    set file_log=c:\script_log.txt
    
    echo.  >> %file_log%
    echo ------------------------- >> %file_log%
    echo.  >> %file_log%
    echo START CLEANING LOOP --%date%-%time%>> %file_log%
    echo.  >> %file_log%
    
    :: Creation liste Profils Utilisateurs
    
    
    dir %profiles_path%\*USER* /b /a:d > %list_file%
    
    :: Boucle de suppression 
    
    for /f %%i in (%list_file%) do (
    
    if exist "%profiles_path%\%%i\%folder_path%" (rmdir /q /s %profiles_path%\%%i\%folder_path%)
    
    
    )
    
    pause
    
    
    echo.  >> %file_log%
    echo END CLEANING LOOP --%date%-%time%>> %file_log%
    Mes deux fichier txt sont bien crées, on retrouve les infos dedans,
    mais le repertoire "inet" n'est pas supprimé à la fin du script

    pourtant la ligne suivante me parait bonne:
    for /f %%i in (%list_file%) do (
    if exist "%profiles_path%\%%i\%folder_path%" (rmdir /q /s %profiles_path%\%%i\%folder_path%)
    De plus j'ai un gros doute sur la ligne:
    set folder_path=c:\profil\user1\inet :: Attention après "Documents and settings\NomDuProfiUtilisateur\"
    Pourquoi mettre le nom du profil utilisateur alors que l'on risque d'en trouver plusieurs ?

    voilà, merci pour les info et l'aide

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 31
    Points : 16
    Points
    16
    Par défaut
    Oups j'ai vu ton message un peu tard
    j'ai modifié la ligne 6, cela donne:
    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
    29
    30
    31
    32
    33
    34
    35
    36
    @echo off
    
    
    set profiles_path= C:\profil
    
    set folder_path=inet :: Attention après "Documents and settings\NomDuProfiUtilisateur\" 
    
    set list_file=c:\list_file.txt
    set file_log=c:\script_log.txt
    
    echo.  >> %file_log%
    echo ------------------------- >> %file_log%
    echo.  >> %file_log%
    echo START CLEANING LOOP --%date%-%time%>> %file_log%
    echo.  >> %file_log%
    
    :: Creation liste Profils Utilisateurs
    
    
    dir %profiles_path%\*USER* /b /a:d > %list_file%
    
    :: Boucle de suppression 
    
    for /f %%i in (%list_file%) do (
    
    if exist "%profiles_path%\%%i\%folder_path%" (rmdir /q /s %profiles_path%\%%i\%folder_path%)
    
    
    )
    
    pause
    
    
    echo.  >> %file_log%
    echo END CLEANING LOOP --%date%-%time%>> %file_log%
    Mais cela ne supprimme toujours pas le repertoire "inet"

    merci

  8. #8
    Membre averti Avatar de plopi
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Mars 2011
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2011
    Messages : 191
    Points : 306
    Points
    306
    Par défaut
    Avant le code de la réponse j'ai testé sur mon PC (W7x64) ou j'ai reproduis l'arborescence et out fonctionner sans problème (même la partie log qui ne n'intéresse pas j'ai bien compris)... Mais là vu que t'a modifié le code, les variables et les chemins à chaque nouveau post j'ai la flemme de tout reprendre....

    Mais mon avis le problème viens de chemins que tu as positionné .....

    En fait ce répertoire remonte avec le profil de l'utilisateur et se trouve dans application data.
    Dans le premier tu parlais de ce chemin et Il a complétement disparu des posts suivants...

    Bonne chance pour la suite

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 31
    Points : 16
    Points
    16
    Par défaut
    désolé, je te met le code comme il faut

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 31
    Points : 16
    Points
    16
    Par défaut
    J'ai modifié le cemin car en faisant les tests sur unposte xp où je supprime le repertoire inet qui se trouve dans c:\document and settings\user\inet, cela ne marchait pas et me crééee pas le fichier "list_file".
    Donc j'ai essayé un autre chemin.

    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
    29
    30
    31
    32
    33
    34
    35
    @echo off
    
    
    set profiles_path=c:\profil
    set folder_path=inet :: Attention après "Documents and settings\NomDuProfiUtilisateur\" 
    
    set list_file=Chemin\list_file.txt
    set file_log=Chemin\script_log.txt
    
    
    
    echo.  >> %file_log%
    echo ------------------------- >> %file_log%
    echo.  >> %file_log%
    echo START CLEANING LOOP --%date%-%time%>> %file_log%
    echo.  >> %file_log%
    
    :: Creation liste Profils Utilisateurs
    
    dir %profiles_path%\*USER* /b /a:d > %list_file%
    
    
    :: Boucle de suppression 
    
    for /f %%i in (%list_file%) do ( 
    
    if exist "%profiles_path%\%%i\%folder_path%" (rmdir /q /s "%profiles_path%\%%i\%folder_path%" & echo --%date%-%time% USER:%%i FolderDelete >> %file_log%) else (echo --%date%-%time% USER:%%i NoAction >> %file_log%)
    
    
    ) 
    
    
    echo.  >> %file_log%
    echo END CLEANING LOOP --%date%-%time%>> %file_log%

  11. #11
    Membre averti Avatar de plopi
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Mars 2011
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2011
    Messages : 191
    Points : 306
    Points
    306
    Par défaut
    Autant pur moi je viens de voir l'erreur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dir %profiles_path%\*USER* /b /a:d > %list_file%
    Pour mes tests j'avais creé une arborescence bidon avec des dossier nommés "USERS" pour simuler les comptes utilisateurs.

    En fait il faut enlever "*USER*" dans le "dir" pour la création de la liste des comptes utilisateurs à traiter

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dir %profiles_path% /b /a:d > %list_file%
    Là ça devrait mieux marcher, pour être sûr éditer le fichier liste pour voir si elle contient bien la liste des comptes.

    Encore désolé

  12. #12
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 31
    Points : 16
    Points
    16
    Par défaut
    ok, mais bon ça ne marche tours pas

    je me demande si je fait pas d'erreur dans les lignes suivantes:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    set profiles_path=C:\profil
    
    set folder_path=inet :: Attention après "Documents and settings\NomDuProfiUtilisateur\"
    ou alors dans
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    :: Boucle de suppression 
    
    for /f %%i in (%list_file%) do ( 
    
    if exist "%profiles_path%\%%i\%folder_path%" (rmdir /q /s "%profiles_path%\%%i\%folder_path%")
    
    )

    le fichier list_file contient bien les comptes

  13. #13
    Membre averti Avatar de plopi
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Mars 2011
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2011
    Messages : 191
    Points : 306
    Points
    306
    Par défaut
    vire la ligne de commentaire pour laisser que la déclaration de variable

    et en même temps elle n'a plus de sens cette variable si c'est direct à la racine des répertoires users, tu peux directement mettre le nom du dossier. A la base j'avais créé cette variable parce que je soupçonné un chemin à rallonge, genre "user\Application Data\Local settings" ou un truc comme ça

  14. #14
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 31
    Points : 16
    Points
    16
    Par défaut
    Ok merci, ça marche mieux sous cette forme.

    Donc dans le cas réel avec application Data il faudrait que je mette la ligne suivante ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    @echo off
    
    
    set profiles_path=C:\DONNEES\Profs\Profils_Profs
    
    set folder_path="Application data\inetaccelerator"
    merci pour ton aide et ton implication

  15. #15
    Membre averti Avatar de plopi
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Mars 2011
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2011
    Messages : 191
    Points : 306
    Points
    306
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    @echo off
    
    
    set profiles_path=C:\DONNEES\Profs\Profils_Profs
    
    set folder_path="Application data\inetaccelerator"


    Normalement c'est ça

  16. #16
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 31
    Points : 16
    Points
    16
    Par défaut
    Bon j'ai trouvé,

    il s'agit de mettre les guillemets ici:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    
    if exist "%profiles_path%\%%i\%folder_path%" (rmdir /q /s "%profiles_path%\%%i\%folder_path%") & echo --%date%-%time% USER:%%i FolderDelete >> %file_log%)

  17. #17
    Membre averti Avatar de plopi
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Mars 2011
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2011
    Messages : 191
    Points : 306
    Points
    306
    Par défaut
    oui, tu les a supprimé je ne sais pour quelle raison à partir de ton quatrième post....

Discussions similaires

  1. suppression des fichiers de transactions sur exchange 2003
    Par rajaa.at dans le forum Exchange Server
    Réponses: 0
    Dernier message: 01/08/2007, 11h40
  2. [Windows 2003 server] fichier host
    Par mohamed dans le forum Windows Serveur
    Réponses: 3
    Dernier message: 09/02/2007, 10h48
  3. explorateur fichier php sur windows 2003
    Par super-manu dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 09/02/2006, 14h42
  4. suppression de fichier impossible (windows xp)
    Par annecyrond dans le forum Windows XP
    Réponses: 8
    Dernier message: 10/03/2005, 11h38

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