[BATCH] Recherche dans un nom de fichier et info

Résolu
clemvarois -  
barnabe0057 Messages postés 14454 Date d'inscription   Statut Contributeur Dernière intervention   - 11 janv. 2021 à 13:07
Bonjour,

je me permets de poster ici pour vous demander de l'aide.

Apres avoir parcouru beaucoup de forum je cherche un petit programme en batch qui me simplifierait grandement la vie.

j'ai une grande quantité de fichier (plusieurs milliers) avec des noms de 7 caractères comme ci-dessous:

GT590FE
SI961DP
FY876VB

les doublons sont suivis de (x) selon le nombre de doublons. Ex=GT590FE(1)


J'aimerais un .bat qui me permette de faire une recherche dans le nom, et qui m'affiche les lignes en dessous la date et l'heure de la création du fichier ainsi que le répertoire de ce dernier.

Jen connait très peu a la programmation mais je m'en intéresse grandement.

J'ai déjà trouvé ce code sur ce forum qui me donne une piste mais j'ai pas les connaissances pour le complété:

@echo off

echo.
echo ---------------------------------
set /p date=Entrez la 1ere date :
echo ---------------------------------
echo.

for /f "tokens=1,2,3 delims=_" %%i in ('dir /B *%date%*') do (
echo Nom du fichier: %%i_%%j_%%k
echo Date 1 : %%j
echo Date 2 : %%k
echo.
)

pause


Merci d'avance pour votre aide !


Configuration: Windows / Chrome 87.0.4280.88

2 réponses

barnabe0057 Messages postés 14454 Date d'inscription   Statut Contributeur Dernière intervention   4 925
 
Voilà la solution :

@echo off
setlocal enableextensions disabledelayedexpansion
ver | find "10.0." >nul && chcp 65001 >nul || chcp 28591 >nul

echo.
echo ---------------------------------
set /p jour="Entrez la 1ere date : "
echo ---------------------------------
echo.

set "dossier=# %jour:/=-%"
if not exist "%dossier%" (mkdir "%dossier%")

for /f "tokens=1-3* delims= " %%A in ('dir /tc /a-d ^| find "%jour%"') do (

echo Nom du fichier: %%~D
echo Date de création : %%~A à %%~B
echo Chemin : %%~dpD
echo.

copy "%%~fD" "%dossier%" >nul

)

pause


1
clemvarois
 
Au top !

Ca fonctionne et c'est exactement ce que je voulais,

Merci ;)
0
barnabe0057 Messages postés 14454 Date d'inscription   Statut Contributeur Dernière intervention   4 925 > clemvarois
 
De rien, tant mieux alors.
0
barnabe0057 Messages postés 14454 Date d'inscription   Statut Contributeur Dernière intervention   4 925
 
Bonjour,

Essaie comme ça :

@echo off
ver | find "10.0." >nul && chcp 65001 >nul || chcp 28591 >nul

echo.
echo ---------------------------------
set /p jour="Entrez la 1ere date : "
echo ---------------------------------
echo.

for /f "tokens=1-4 delims= " %%A in ('dir /tc /a-d ^| find "%jour%"') do (
echo Nom du fichier: %%~D
echo Date de création : %%~A à %%~B
echo Chemin : %%~dpD
echo.
)

pause



0
clemvarois
 
Merci !

Ce petit programme va déjà beaucoup m'aider , cependant je me demande si c'est possible de récupérer les fichiers (Photos) qui sortent du résultat et de les copier (oui ou non) dans un dossier crée au même moment ?

En tout cas merci pour la rapidité !
0
barnabe0057 Messages postés 14454 Date d'inscription   Statut Contributeur Dernière intervention   4 925 > clemvarois
 
Oui c'est possible, c'est pas très compliqué je te laisse une chance de trouver par toi-même ;)
0