Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

suppression d un ensemble de repertoire comprenant un caractère en ms-dos

3 réponses
Avatar
hijo
Bonjour,
je cherche à supprimer dans un répertoire un ensemble de dossier qui commencent par $ et qui finissent par $
pourriez vous m'aiguiller sur un petit batch dos pour celà ?
Je pense qu'il faut faire une boucle avec for, mais je ne m'y connais pas assez pour cela ^_^

Merci d'avance ^_^

3 réponses

Avatar
Jean-Claude BELLAMY
NB: J'ai volontairement changé le titre du fil !

"hijo" a écrit dans le message de groupe de discussion
:
Bonjour,
je cherche à supprimer dans un répertoire un ensemble de dossier qui
commencent
par $ et qui finissent par $
pourriez vous m'aiguiller sur un petit batch dos pour celà ?



"Dos" ?????
Qu'est-ce que ça vient faire ici ?
Pour la énième fois, "n" tendant vers plus l'infini, ce n'est pas parce
qu'une application, un script, ..., est en mode texte (=console) que c'est
du DOS !

Un fichier batch, sous Windows de la famille "NT", est exécuté par CMD.EXE
qui est une application Windows 32 bits à 100%!
Il n'y a pas le quart de yocto-pouïème de DOS là-dedans !

Je pense qu'il faut faire une boucle avec for, mais je ne m'y connais pas
assez
pour cela



C'est 'achement compliqué !!! ;-)

En commande directe :
FOR /D %D in (^$*^$) do rd %D

Dans un fichier batch
@echo off
FOR /D %%D in (^$*^$) do rd %%D


Commentaires :
Le commutateur /D indique que la boucle va explorer
des dossiers ("D" pour "directories")

Comme le caractère "$" est un caractère générique, il faut
le faire précéder du caractère d'échappement "^" si on veut
le considérer comme un caractère normal.
Donc la séquence ^$*^$ signifie :
nom commençant par "$", suivi d'une chaine quelconque,
et se terminant par "$"


PS: que veux-tu faire EX-AC-TE-MENT ?
Car des dossiers dont le nom est $....$, cela ressemble furieusement aux
dossiers de désinstallation de correctifs Windows!

Et dans ce cas, j'ai conçu un script VBS qui fait cela automatiquement, avec
une interface graphique, avec liens vers la KB de Microsoft, la BDR, ... ,
et qui supprime à la fois les dossiers mais aussi les clefs concernées de la
BDR :
http://www.bellamyjc.org/fr/windows2000.html#Ntuninstall

ATTENTION !
Il ne faut pas supprimer le dossier %systemroot%$hf_mig$ !
http://www.bellamyjc.org/fr/windowsxp2003.html#hf_mig



--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP]
http://www.bellamyjc.org ou http://jc.bellamy.free.fr
Avatar
Serge Paccalin
Le Mon, 12 Apr 2010 03:35:20 -0500, hijo a écrit
(dans <news:, posté
dans fr.comp.os.ms-windows.programmation) :

je cherche à supprimer dans un répertoire un ensemble de dossier qui commencent
par $ et qui finissent par $
pourriez vous m'aiguiller sur un petit batch dos pour celà ?
Je pense qu'il faut faire une boucle avec for, mais je ne m'y connais pas assez
pour cela



del $*$

--
___________
_/ _ _`_`_`_) Serge PACCALIN -- sp ad mailclub.net
_L_) Il faut donc que les hommes commencent
-'(__) par n'être pas fanatiques pour mériter
_/___(_) la tolérance. -- Voltaire, 1763
Avatar
narber
Le lundi 12 Avril 2010 à 10:35 par hijo :
Bonjour,
je cherche à supprimer dans un répertoire un ensemble de dossier
qui commencent par $ et qui finissent par $
pourriez vous m'aiguiller sur un petit batch dos pour celà ?
Je pense qu'il faut faire une boucle avec for, mais je ne m'y connais pas assez
pour cela ^_^
Merci d'avance ^_^
Bonjour JC,
Pour des besoins similaires (je cherche des dossiers dont le nom commence par un ou des caractères non alphabétiques), j’ai essayé avec un fichier .cmd, ça marche sauf pour les dossiers qui contiennent un espace dans le nom. J’ai bien essayé de mettre des doubles quotes de part et d’autre ou entre les parenthèses, sans succès. Aurais-tu la solution STP ?