D'après ton message tu es ouverte à peu près à tout type de réponse, j'ai bien vu qu'il y avait [batch] dans l'intitulé, et ce qui suit est du Powershell, donc désolé si tu veux qu'une commande cmd.
Mais si tu es ouverte à Powershell, voici:
- On définit une variable qui contient le nom de ton log, $file
- Ensuite on récupère les dernières 50000 lignes dans une variable (tail = queue de fichiers, on prend les 50K dernières lignes)
- On supprime le log
- et on sauvegarde le contenu de la variable dans le fichier de log $file
1 2 3 4
| $file = 'a.txt'
$50K = Get-Content $file -tail 50000
Remove-Item $file
$50K |Out-File $file -Force |
Ceci purgera ton fichier de log tout en gardant les 50K dernières lignes.
PS. Comme je n'ai pas vu de réponse en cmd, et que j'en fais pas, je me suis dit, Powershell c'est mieux que rien

Partager