bonjour à tous
j'ai un gros problème, on me demande de chercher dans plusieurs fichiers .txt dans la première ligne la position d'un caractère ( s)
exemple
fichier-toto.txt
fichier-tutu.txt
fichier-tata.txt
7771765;S;020;52140209;13257830;20217412;20215214;
donc le S est en 8 eme position
une fois trouvé
il doit rajouter au fichier -8 dans le nom du fichier
fichier-toto-8.txt
fichier-tutu-7.txt
fichier-tata-6.txt
j'ai cherché des solutions en bat ou PowerShell et j'ai rien trouvé pour faire cela
grand merci pour l'aide
Code Batch : 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 @echo off REM dossier ne doit pas se terminé par un \ set dossier=C:\test set cherche=S for /f "tokens=*" %%a in ('dir /A/B/S "%dossier%\*.txt" 2^>nul') do findstr /i /B "nom=%cherche%*" "%%a" >nul 2>nul&&( echo Fichier trouve "%%a" ^(dans "%%~dpa"^) SET RepName2=%%a setlocal enabledelayedexpansion for %%a in (c:\test\*.txt) do ( for /f "tokens=1 delims= " %%b in ('echo %%~ta') do ( set "$date=%%b" set "$date=!$date:/=-!" ren "%%a" "%%~na_%RepName2%.txt")) pause>NUL exit )
Partager