Batch Index du Forum
S’enregistrerRechercherFAQMembresGroupesConnexion
Répondre au sujet Page 1 sur 3
Aller à la page: 1, 2, 3  >
PB RECHRCHE DE FICHIER PAR JUSTE 2 LETTRE DE SON NAME FILES
Auteur Message
Répondre en citant
Message PB RECHRCHE DE FICHIER PAR JUSTE 2 LETTRE DE SON NAME FILES 
j ai un probleme dans ma partie process comme le dit le titre mon probleme doit etre la parti recherche des 2 premiere lettre kb dans les nom des fichier vue qu il me supprime pas les fichiers

Code:
setlocal enabledelayedexpansion

set completepath=C:\WINDOWS\
FOR /R %completepath% %%G IN (*.log) DO call :process "%%~nG"
GOTO :EOF

:process
SET names=%~1
SET %name%=%~1
SET chkname=%name:KB=?%
IF "%chkname:~0,2%"=="?" (
  ECHO %name% -- this is KB file!
del %completepath%%names%.log /S /Q
)
pause


-- Merci de ne pas écrire en majuscules svp -- stryk



Message Publicité 
PublicitéSupprimer les publicités ?


Répondre en citant
Message PB RECHRCHE DE FICHIER PAR JUSTE 2 LETTRE DE SON NAME FILES 
J'ai pas testé ce que je vais te dire



Bon déjà rien qu'au premier coup d'oeil, ya un truc mais alors vraiment pas logique du tout de OUUUF
Je parle de ceci lol :
Code:
IF "%chkname:~0,2%"=="?"

On est bien d'accord que c'est littéralement impossible, if "?d"=="?" Mr. Green
Donc remplace par ceci :
Code:
IF "%chkname:~0,1%"=="?"


Ensuite, quand on regarde d'un peu plus près :
Code:
SET %name%=%~1

Est-ce que tu sais ce que cela signifie xDD
Supprime tout simplement cette ligne car tu ne t'en sert pas par la suite Okay
edit : je dis ça car tu tente de t'en servir sauf que tu utilise la variable name alors que tu ne l'a pas déclaré, dans ton cas, il faut mettre ceci pour utiliser la variable %name% :
Code:
echo;!%name%!

Je te déconseille de faire ça Okay

Je n'ai pas regardé si la boucle for fonctionne mais elle a l'air de bien fonctionner Very Happy

_______________
Edit :

Il y a aussi quelques erreurs, donc voici une correction non-optimisé :
Code:
setlocal enabledelayedexpansion
 
set completepath=C:\WINDOWS\
FOR /R %completepath% %%G IN (*.log) DO call :process "%%~nG"
pause
 
:process
SET "names=%~1"
SET "chkname=%names:KB=?%"
IF "%chkname:~0,1%"=="?" (
  ECHO "%names%" -- this is KB file!
del "%completepath%%names%.log" /S /Q
)
GOTO :EOF





______________________________________________________
la vie est trop courte pour retirer le périphérique USB en toute sécurité...
Si la statue de la liberté lève le bras depuis 125 ans, c'est parce qu'elle cherche du réseau sur son Blackberry Torches...
Grâce à mon nouveau correcteur automatiste sur mon téléphage, je ne fais plus aucune faute d'orthodontie.
Quelqu'un a t il déjà demandé au drapeau japonais ce qu'il enregistre depuis tout ce temps ?
Visiter le site web du posteur
Répondre en citant
Message PB RECHRCHE DE FICHIER PAR JUSTE 2 LETTRE DE SON NAME FILES 
merci l ami tu c est moi et le batch c est pas ma tasse de the ni mon language preferer je le fait la par se que je suis sur un projet qui l oblige sinon je m en passerai

-- Merci de ne pas écrire en majuscules svp -- stryk



Répondre en citant
Message PB RECHRCHE DE FICHIER PAR JUSTE 2 LETTRE DE SON NAME FILES 
Version optimisé :

Code:

    @echo off
   setlocal enabledelayedexpansion
    set completepath=C:\WINDOWS\
   
   echo;KB files founds and deleted in %completepath% :
   
    FOR /R "%completepath%" %%A IN (*.log) do (
   set Name=%%~nA
   if /i "!Name:~0,2!" EQU "KB" (
      del /S /Q "%~dpnxA" 2>NUL&&echo;!Name!||echo;!Name! not deleted : error
   ))
    pause


Okay




______________________________________________________
Coucou, tu veux voir mon Site Web ?? Mort de Rire
Visiter le site web du posteur Skype
Répondre en citant
Message PB RECHRCHE DE FICHIER PAR JUSTE 2 LETTRE DE SON NAME FILES 
optimisation tester et elle fonctionne pas



Répondre en citant
Message PB RECHRCHE DE FICHIER PAR JUSTE 2 LETTRE DE SON NAME FILES 
FRED92G a écrit:
OPTIMISATION TESTER ET ELLE FONCTIONNE PAS


Tu peux faire plus précis ?




______________________________________________________
Coucou, tu veux voir mon Site Web ?? Mort de Rire
Visiter le site web du posteur Skype
Répondre en citant
Message PB RECHRCHE DE FICHIER PAR JUSTE 2 LETTRE DE SON NAME FILES 
LES FICHIER SON PAS SUPPRIMER DU TOUT



Répondre en citant
Message PB RECHRCHE DE FICHIER PAR JUSTE 2 LETTRE DE SON NAME FILES 
Test ça :

Code:

 
    @echo off
   setlocal enabledelayedexpansion
    set completepath=C:\WINDOWS\
   
   echo;KB files founds and deleted in %completepath% :
   
    FOR /R "%completepath%" %%A IN (*.log) do (
   set Name=%%~nA
   if /i "!Name:~0,2!" EQU "KB" (
      del /S /Q "%%~dpnxA" 2>NUL&&echo;!Name!||echo;!Name! not deleted : error
   ))
    pause





______________________________________________________
Coucou, tu veux voir mon Site Web ?? Mort de Rire
Visiter le site web du posteur Skype
Répondre en citant
Message PB RECHRCHE DE FICHIER PAR JUSTE 2 LETTRE DE SON NAME FILES 
L OPTIMISATION FONCTIONNE PAS DU TOUT RIEN ET SUPPRIMER



Répondre en citant
Message PB RECHRCHE DE FICHIER PAR JUSTE 2 LETTRE DE SON NAME FILES 
Test ça dis moi ce que ça te renvoie :

Code:

    @echo off
   setlocal enabledelayedexpansion
    set completepath=C:\WINDOWS\
   
   echo;KB files founds and deleted in %completepath% :
   
    FOR /R "%completepath%" %%A IN (*.log) do (
   set Name=%%~nA
echo;%%~A - %%~dpnxA
echo;!Name:~0,2!
   if /i "!Name:~0,2!" EQU "KB" (
      del /S /Q "%%~dpnxA
   ))
    pause





______________________________________________________
Coucou, tu veux voir mon Site Web ?? Mort de Rire
Visiter le site web du posteur Skype
Répondre en citant
Message PB RECHRCHE DE FICHIER PAR JUSTE 2 LETTRE DE SON NAME FILES 
SA VA PAS IL ME VIRE TOUT LES LOG ET PAS JUSTE SEUS QUI POSSEDE KB ANS LEUR NOM



Répondre en citant
Message PB RECHRCHE DE FICHIER PAR JUSTE 2 LETTRE DE SON NAME FILES 
Version optimisé :

Code:
@echo off&setlocal enabledelayedexpansion&set completepath=C:\WINDOWS\&set /a nb=0&echo;Traitement de !completepath!
for /r %completepath% %%G in (*.log) do set "names=%%~nG"&if "!names:~0,2!"=="KB" echo;"!names!" -- File KB deleted&set /a nb+=1&del "%completepath%%names%.log" /S /Q
echo;&echo;Nombre de fichier KB supprimer : !nb!&pause>nul


Okay




______________________________________________________
la vie est trop courte pour retirer le périphérique USB en toute sécurité...
Si la statue de la liberté lève le bras depuis 125 ans, c'est parce qu'elle cherche du réseau sur son Blackberry Torches...
Grâce à mon nouveau correcteur automatiste sur mon téléphage, je ne fais plus aucune faute d'orthodontie.
Quelqu'un a t il déjà demandé au drapeau japonais ce qu'il enregistre depuis tout ce temps ?
Visiter le site web du posteur
Répondre en citant
Message PB RECHRCHE DE FICHIER PAR JUSTE 2 LETTRE DE SON NAME FILES 
J AI REPRIE CELLE LA JE LES CORRIGER UN PEU SA FONCTIONNE MES JE LA TROUVE UN PEU LENTE

Code:
 @echo off
   setlocal enabledelayedexpansion
    set completepath=%systemdrive%\WINDOWS\
   
 FOR /R "%completepath%" %%A IN (*.log) do (
   set Name=%%~nA
   if /i "!Name:~0,2!" EQU "KB" (
      del /S /Q "%%~dpnxA" >NUL &&echo;!Name!||echo;!Name! not deleted : error
   ))
    pause




Répondre en citant
Message PB RECHRCHE DE FICHIER PAR JUSTE 2 LETTRE DE SON NAME FILES 
FRED92G a écrit:
SA VA PAS IL ME VIRE TOUT LES LOG ET PAS JUSTE SEUS QUI POSSEDE KB ANS LEUR NOM


Très étrange et normalement impossible vu le code, je doute que le problème vienne de mon code, regarde l'encodage de ton fichier batch, et le code qu'il y a avant, 'setlocal enabledelayedexpansion' doit être impérativement activé !

Est-tu bien sûr de toi ? Je crois que tu n'as pas compris que j'affichais tout les fichier .log même si ceux ci ne comporte pas KB dans les 2 premières lettre de leurs nom ?
C'est bien ceci que tu veux ?

Et pourquoi tu écrit toujours en majuscules ? Wink


Code:

    @echo off
   setlocal enabledelayedexpansion
    set completepath=C:\WINDOWS\
   
   echo;KB files founds and deleted in %completepath% :
   
    FOR /R "%completepath%" %%A IN (*.log) do (
   set Name=%%~nA
   if /i "!Name:~0,2!" EQU "KB" (
echo;%%~A deleted ...
del /S /Q "%%~A")
   )
    pause
 





______________________________________________________
Coucou, tu veux voir mon Site Web ?? Mort de Rire
Visiter le site web du posteur Skype
Répondre en citant
Message PB RECHRCHE DE FICHIER PAR JUSTE 2 LETTRE DE SON NAME FILES 
FRED92G a écrit:
J AI REPRIE CELLE LA JE LES CORRIGER UN PEU SA FONCTIONNE MES JE LA TROUVE UN PEU LENTE


Tu pourra pas faire plus rapide, il y a un nombre incroyable de dossiers dans %Windir%, si tu veux que ce soit plus rapide, achète un SSD Okay




______________________________________________________
Coucou, tu veux voir mon Site Web ?? Mort de Rire
Visiter le site web du posteur Skype
Message PB RECHRCHE DE FICHIER PAR JUSTE 2 LETTRE DE SON NAME FILES 


Montrer les messages depuis:
Répondre au sujet Page 1 sur 3
Aller à la page: 1, 2, 3  >
  



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