Bonjour les développeurs.
Le script fonctionne par glisser/déposer pour supprimer les lignes vides et un mot spécifique.
J'ai combiné ce script à celui qui me permet de désigner le fichier à traiter grâce au navigateur.
Cependant j'ai 2 problèmes:
1. Le fichier de sortie ne nomme pas le fichier traité et son extension, il l'affiche ainsi: cleaned_ donc je dois l'ajouter manuellement.
2. Le fichier de sortie est créé dans le dossier du batch, or je voudrais que cela se fasse dans le dossier du fichier traité.
Voici le script: (navigateur + script qui supprime les lignes vides et un mot spécifique)
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 @echo off set dialog="about:<input type=file id=FILE><script>FILE.click();new ActiveXObject set dialog=%dialog%('Scripting.FileSystemObject').GetStandardStream(1).WriteLine(FILE.value); set dialog=%dialog%close();resizeTo(0,0);</script>" echo. echo Recherchez et slectionnez un fichier texte puis cliquez sur Ouvrir for /f "tokens=* delims=" %%p in ('mshta.exe %dialog%') do set "file=%%p" echo selected file is : "%file%" echo Chemin et fichier actuels : "%file%" echo. echo Le batch accepte le nom du fichier avec espace echo. echo ( Les extensions sont: .txt et .bat ) echo. echo ( Le mot est sensible la casse "Mot" et "mot" sont diffrents ) echo. set /p "mot=Tapez le mot supprimer de chaque ligne: " type nul > "cleaned_%~nx1" for /f "delims=" %%a in ('type "%file%" ^| findstr /v /r /c:"[ \t]%mot%[ \t]" /c:"[ \t]%mot%$" /c:"^%mot%[ \t]" /c:"^%mot%$"') do >>"cleaned_%~nx1" echo;%%a echo. pause
Merci de bien vouloir m'aider.
Partager