Batch Index du Forum
S’enregistrerRechercherFAQMembresGroupesConnexion
Répondre au sujet Page 1 sur 1
Suppression de dossiers via un listing
Auteur Message
Répondre en citant
Message Suppression de dossiers via un listing 
Bonjour,

Je souhaiterai réaliser un script qui supprimerait automatiquement les favoris réseaux qu'on peut avoir dans sous Windows XP.
Cependant je ne souhaiterai pas forcement supprimer tous les favoris réseaux, seulement certains qui commenceraient par un mot ou un caractère prédéfini.

Pour accéder directement au dossier "Voisinage réseau" qui correspond au raccourci "Favoris réseaux" j'utilise la variable suivante :
%userprofile%\"voisinage réseau"

Seulement par la suite on ne peut pas indiquer :
rd /s /q "save*"
Pour supprimer tout ce qui commence par "save"

Il faudrait donc faire je pense un listing, afin de récupérer les noms complet des dossiers et ensuite les utiliser en tant que variable pour pouvoir supprimer les dossiers.

Je ne sais pas si j'ai réussi à bien m'exprimer, en tout cas je reste à votre disposition pour plus d'information Wink

Merci par avance



Message Publicité 
PublicitéSupprimer les publicités ?


Répondre en citant
Message Suppression de dossiers via un listing 
Salut Cadeau, je te l'offre =P ^^

Code:
@ECHO OFF


Rem ----------------------------------------------------------------
:: Liste tout les dossier contenu une chaine save
Rem ----------------------------------------------------------------
Echo ======================================================
For /f "tokens=1,*" %%a in ('dir /s /b "%userprofile%\voisinage réseau\*save*.*"') do (
    Echo %%a %%b
)
Echo ======================================================


Echo.
Pause
Echo.


Rem ----------------------------------------------------------------
:: Liste tout les dossier contenu une chaine save puis les supprimer
:: Ensuite si ils exist pas ont affiche Supprimer sinon Erreur
Rem ----------------------------------------------------------------
Echo ======================================================
For /f "tokens=1,*" %%a in ('dir /s /b "%userprofile%\voisinage réseau\*save*.*"') do (
    rd /s /q "%%a %%b"
    IF NOT EXIST "%%a %%b" (
    Echo Supprimer - "%%a %%b"
    ) ELSE (
    Echo Erreur - "%%a %%b"
)
 )
Echo ======================================================


pause>nul


Site tu a des dossier de ce genre :

%userprofile%\voisinage réseau\save coucou
%userprofile%\voisinage réseau\save
%userprofile%\voisinage réseau\savetest

etc...

De même, pour la suppressions, sa les supprimeras.
Sa les afficheras tous. Même si il y a un espace quelque part, sa afficheras le nom du dossier complets.



Répondre en citant
Message Suppression de dossiers via un listing 
Bonjour

la syntaxe exacte ne serait pas celle ci :

RD /S /Q "%userprofile%\voisinage réseau\save*" ?

Sinon tu peux passer par le registre pour aller chercher le chemin du voisinage réseau

HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\NetHood


Code:
@echo off
FOR /F "TOKENS=2,*" %%I IN ('REG QUERY "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" ^| FIND /I "NetHood"') DO SET DOSS=%%J
RD /S /Q "%DOSS%\save*"
Pause


ou

Code:
@echo off
FOR /F "TOKENS=2,*" %%I IN ('REG QUERY "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" ^| FIND /I "NetHood"') DO RD /S /Q "%%J\save*"
pause




Dernière édition par Laddy le Mar 17 Mai 2011 - 11:26; édité 1 fois

______________________________________________________
Faites paraitre votre batch sur BatchClipboard
Visiter le site web du posteur
Répondre en citant
Message Suppression de dossiers via un listing 
Merci à tous deux Wink

La syntaxe suivante, ne fonctionne pas :
RD /S /Q "%userprofile%\voisinage réseau\save*"
Car je crois qu'il ne prend pas en compte le caractère générique *

J'essayerai les deux méthodes.
Car je ne sais pas si les non-administrateurs peuvent supprimer des clés de registre.



Répondre en citant
Message Suppression de dossiers via un listing 
Bonjour,

Dream,
J'ai testé ton script et malheureusement il ne fonctionne pas :


Cependant ton script fonctionne très bien pour des dossiers qui se trouvent dans "Mes documents" par exemple

Laddy,
Ton 1er script me donne l'erreur suivante :



Et ton second script me ressort celle-la :



Pourtant quand je tape la commande manuellement dans une fenêtre dos, cela fonctionne bien :


Et ensuite la suppression via la ligne de commande suivante, fonctionne bien :
RD /S /Q "Save Vers 12"

Avez-vous des solutions ?



Répondre en citant
Message Suppression de dossiers via un listing 
Bonjour,

Pas de solution ? Embarassed



Répondre en citant
Message Suppression de dossiers via un listing 
Bonjour
remplace la commande rd par dir pour voir si il liste qq chose dans ma boucle tu as testé ??
je nai pas matière pour tester difficile de t'aider.




______________________________________________________
Faites paraitre votre batch sur BatchClipboard
Visiter le site web du posteur
Répondre en citant
Message Suppression de dossiers via un listing 
J'ai remplacé dans tes deux scripts la commande "RD" par "DIR" et j'obtiens l'erreur suivante :
Le fichier spécifié est introuvable.
Appuyez sur une touche pour continuer...



Message Suppression de dossiers via un listing 


Montrer les messages depuis:
Répondre au sujet Page 1 sur 1
  



Index | créer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Copyright 2008 - 2016 // Batch