Recherche script pour trouver la position d'un caractère et le numéro de position dans le nom du fichier
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:
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
) |