[BAT] Verification d'une chaine de caractére dans un fichier txt
Résolu
SAITO_
Messages postés
17
Date d'inscription
Statut
Membre
Dernière intervention
-
barnabe0057 Messages postés 14455 Date d'inscription Statut Contributeur Dernière intervention -
barnabe0057 Messages postés 14455 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour a tous,
J'ai un probléme concernant la vérification de la présence d'une chaine de caractére (nom de fichiers) dans un .txt qui sauvegarde le nom des fichiers .pdf une fois modifier pour faire la comparaison.
voici le script
J'ai un probléme concernant la vérification de la présence d'une chaine de caractére (nom de fichiers) dans un .txt qui sauvegarde le nom des fichiers .pdf une fois modifier pour faire la comparaison.
voici le script
@echo off cd D:\Users\xxxxxx\Desktop\Outils STAGE Informatique\partage setlocal enabledelayedexpansion for %%a in (*.pdf) do ( echo %%~na for /f "tokens=1 delims= " %%b in ('echo %%~ta') do ( set "$date=%%b" set "$date=!$date:/=-!" findstr /m %%~na.pdf > "D:\Users\xxxxxx\Desktop\Outils STAGE Informatique\Script\BDD.txt" if %errorlevel%==0 ( echo fichier deja renomme ) else ( ren "%%a" "%%~na_!$date!.pdf" echo %%~na_!$date!.pdf >> "D:\Users\xxxxxx\Desktop\Outils STAGE Informatique\Script\BDD.txt")) ) pause
A voir également:
- [BAT] Verification d'une chaine de caractére dans un fichier txt
- Creer un fichier .bat - Guide
- Fichier bin - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Caractère ascii - Guide
1 réponse
Bonjour,
Le seul problème que je vois c'est la redirection dans la ligne contenant le FINDSTR, je pense qu'il suffit de l'enlever pour que ça fonctionne.
Voilà comment j'aurais écrit ce script :
Le seul problème que je vois c'est la redirection dans la ligne contenant le FINDSTR, je pense qu'il suffit de l'enlever pour que ça fonctionne.
Voilà comment j'aurais écrit ce script :
@echo off
set bdd=%USERPROFILE%\Desktop\Outils STAGE Informatique\Script\BDD.txt
cd /d %USERPROFILE%\Desktop\Outils STAGE Informatique\partage
setlocal enabledelayedexpansion
for %%a in (*.pdf) do (
echo %%~na
for /f "tokens=1 delims= " %%b in ('echo %%~ta') do (
set "$date=%%b"
set "$date=!$date:/=-!"
findstr /m %%~nxa %bdd% && echo fichier deja renomme || (ren "%%a" "%%~na_!$date!.pdf" & echo %%~na_!$date!.pdf >> %bdd%)
)
)
pause
j'ai modifier un peut le scripts: