for /f "delims=" %%a in ('dir /b/OD C*.txt') do (
set D=%%~pa
set nom=%%~na
for /f "delims=_ tokens=1-5" %%b in ('echo !nom!') do (
findstr "^[0-9]" "%%a" >> "!D!File_Concatenate_%%b_%%c_%%d_%%e_%%f.txt"
)
)
Explications:
Le script parcours le contenu des fichiers txt (classés par date) pour extraire les lignes commençant par un chiffre puis concatène ces lignes dans le fichier final.
Mon problème:
Il faudrai que dans mon fichier final (File_concatenate...), la première ligne soit la même que la première ligne d'un des fichiers a concaténer (peu importe lequel). En effet tous les fichiers a concatener commencent par la même ligne et donc cette même ligne je voudrais la retrouver dans mon fichier final. Je vous met la ligne en question:
Date Temps Durée_Pas NomBat Cycle Etat VBat IBat Ah Wh Pente TC_Bat Voie Banc
hello
pour n'afficher que la première ligne de fichier.txt
@echo off
setlocal enableDelayedExpansion
set c=0
for /f "delims=" %%a in ('type fichier.txt') do (
if !c! EQU 0 set ligne1=%%a
set /a c+=1
)
echo %ligne1%