Bonjour les développeurs
Habituellement, je me sers d'un éditeur de texte, comme Notepad++, pour supprimer les lignes vides ainsi que des lignes spécifiques à l'aide d'expressions régulières dans des fichiers .txt et .bat
Les expressions régulières dont je me sers sont:
.*le_mot_spécifique.*\r\n pour supprimer les lignes vides et les lignes qui contiennent le mot spécifique
^.*le_mot_spécifique.*$ pour supprimer uniquement les lignes qui contiennent le mot spécifique
Mais ce script me facilite le travail. Il fonctionne très bien si le fichier (.txt ou .bat) à traiter se trouve dans le même répertoire que le batch.
Comment traiter un fichier s'il se trouve dans un autre répertoire par glisser/déposer ?
Voici le script:
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
21
22
23
24
25
26
27
28
29 @echo off echo. echo Le batch accepte le nom du fichier avec espace echo. echo ( Les extensions sont: .txt et .bat ) echo. set /p "file=Tapez le nom du fichier et son extension: " echo. echo ( Le mot est sensible la casse "Mot" et "mot" sont diffrents ) echo. set /p "mot=Tapez le mot supprimer de chaque ligne: " rem on supprime toutes les lignes vides et on crée le fichier _file (for /f "delims=" %%a in ('type "%file%"') do echo %%a)>>_"%file%" rem on supprime le mot spécifique de chaque ligne du fichier file type _"%file%" | find /v "%mot%" > __"%file%" rem on supprime le fichier _file del _"%file%" rem on renomme le fichier __file en _file ren __"%file%" _"%file%" echo. pause
Merci de votre aide.
Partager