Batch Index du Forum
S’enregistrerRechercherFAQMembresGroupesConnexion
Répondre au sujet Page 1 sur 1
[R] Comment faire pour connaitre le nombre de ligne ?
Auteur Message
Répondre en citant
Message [R] Comment faire pour connaitre le nombre de ligne ? 
Salut à tous Very Happy

En ce moment je bosse sur un interpréteur de commande en batch, et je voulais savoir comment savoir le nombre de ligne dans un fichier ?
Si quelqu'un pourrais m'aider ça serait SUPER cool !

Merci d'avance Very Happy

Cordialement, Fokker974 Razz




______________________________________________________
Fokker974 The batcher
Message Publicité 
PublicitéSupprimer les publicités ?


Répondre en citant
Message [R] Comment faire pour connaitre le nombre de ligne ? 
Tout bêtement :
Code:

setlocal ENABLEDELAYEDEXPANSION
for /f "tokens=* delims=" %%A in (TonFichier) do set /a Lines+=1
echo;%Lines%
pause>NUL





______________________________________________________
Coucou, tu veux voir mon Site Web ?? Mort de Rire
Visiter le site web du posteur Skype
Répondre en citant
Message [R] Comment faire pour connaitre le nombre de ligne ? 
Salut Very Happy
Voici une autre façon pour calculer le nombre de lignes dans le cas ou vous avez plusieurs types de fichiers a scanner Okay

Code:
@echo off
Title Scanning number of lines into files by Hackoo %Date% @ %Time%
Set LogFile=nbLines.txt
If Exist "%LogFile%" Del "%LogFile%"
for %%X in (*.txt *.bat *.vbs *.hta) do (
   Call :Scanning "%%~X"
   Call :CountLines "%%~X" "%LogFile%"
)
Start "" "%LogFile%"
Exit /b
::**************************************************************
:CountLines
set /a cnt=0
for /f %%a in ('type "%~1" ^|find "" /v /c') do set /a cnt=%%a
echo "%~1"  =======^>  %cnt% lignes >>"%~2"
goto :eof
::**************************************************************
:Scanning <file>
mode con cols=70 lines=3
Cls & Color 0A
echo(
echo         Scanning for file "%~1" ...
goto :eof
::*************************************************************





______________________________________________________
Mes Contributions en Téléchargement
Répondre en citant
Message Thanks ! 
Xenoxis a écrit:
Tout bêtement :
Code:

setlocal ENABLEDELAYEDEXPANSION
for /f "tokens=* delims=" %%A in (TonFichier) do set /a Lines+=1
echo;%Lines%
pause>NUL


Merci beaucoup ^^




______________________________________________________
Fokker974 The batcher
Répondre en citant
Message Merci bc 
Hackoo a écrit:
Salut Very Happy
Voici une autre façon pour calculer le nombre de lignes dans le cas ou vous avez plusieurs types de fichiers a scanner Okay

Code:
@echo off
Title Scanning number of lines into files by Hackoo %Date% @ %Time%
Set LogFile=nbLines.txt
If Exist "%LogFile%" Del "%LogFile%"
for %%X in (*.txt *.bat *.vbs *.hta) do (
   Call :Scanning "%%~X"
   Call :CountLines "%%~X" "%LogFile%"
)
Start "" "%LogFile%"
Exit /b
::**************************************************************
:CountLines
set /a cnt=0
for /f %%a in ('type "%~1" ^|find "" /v /c') do set /a cnt=%%a
echo "%~1"  =======^>  %cnt% lignes >>"%~2"
goto :eof
::**************************************************************
:Scanning <file>
mode con cols=70 lines=3
Cls & Color 0A
echo(
echo         Scanning for file "%~1" ...
goto :eof
::*************************************************************


Merci bc ^^




______________________________________________________
Fokker974 The batcher
Répondre en citant
Message [R] Comment faire pour connaitre le nombre de ligne ? 
Une autre façon pour plusieurs fichiers :

Code:

@echo off
setlocal ENABLEDELAYEDEXPANSION

for %%A in (
"Ton fichier entre guillemet"
"Un autre fichier sur une autre ligne ! Pas 2 fichier sur la même ligne"
) do (
set /a Lines=0
for /f "tokens=* delims=" %%B in (%%~A) do set /a Lines+=1
echo;%%~A : !Lines! lignes)
pause>NUL


Okay




______________________________________________________
Coucou, tu veux voir mon Site Web ?? Mort de Rire
Visiter le site web du posteur Skype
Répondre en citant
Message [R] Comment faire pour connaitre le nombre de ligne ? 
Xenoxis a écrit:
Une autre façon pour plusieurs fichiers :

Code:

@echo off
setlocal ENABLEDELAYEDEXPANSION

for %%A in (
"Ton fichier entre guillemet"
"Un autre fichier sur une autre ligne ! Pas 2 fichier sur la même ligne"
) do (
set /a Lines=0
for /f "tokens=* delims=" %%B in (%%~A) do set /a Lines+=1
echo;%%~A : !Lines! lignes)
pause>NUL


Okay


Ah c'est cool ca ! Sauf que maintenat j'ai un nouveau probleme... :

Code:

::UniShell Interpeter by UniBatch Team Copyright 2016
@echo off
cls
color 07
setlocal enabledelayedexpansion
title UniShell Pre-Alpha 0.1 @ Interpreter v0.1.0
mode con: lines=42 cols=119
set syspath="%cd%"
cls

:menu
cls
set /p "user=File to open :"

:interpreter
::detect line number
for /f "tokens=* delims=" %%A in (%user%) do set /a lines+=1
::define line to read
:: le prob est la :
for /l %%a in (1,1,%lines%) do (
   <%user% (
   set /p line%%a=
   )
)
::Il definit la ligne 1 pour toutes les lignes
::go to function detection
goto :dfunction

:dfunction
echo Lines :%lines%
echo.
for /l %%a in (1,1,%lines%) do (
echo !line%%a!
)
pause


Par exemple si je tape dans un fichier :
Code:

test
banane
frites


Ben il definit que la ligne 1,2 et 3 = "test" et il ignore "banane" et "frites" :/




______________________________________________________
Fokker974 The batcher
Répondre en citant
Message [R] Comment faire pour connaitre le nombre de ligne ? 
Xenoxis a écrit:
Une autre façon pour plusieurs fichiers :

Code:

@echo off
setlocal ENABLEDELAYEDEXPANSION

for %%A in (
"Ton fichier entre guillemet"
"Un autre fichier sur une autre ligne ! Pas 2 fichier sur la même ligne"
) do (
set /a Lines=0
for /f "tokens=* delims=" %%B in (%%~A) do set /a Lines+=1
echo;%%~A : !Lines! lignes)
pause>NUL


Okay


Ah NON C'EST BON j'ai trouver la solution ! Désolé d'être si bête ^^




______________________________________________________
Fokker974 The batcher
Répondre en citant
Message [R] Comment faire pour connaitre le nombre de ligne ? 
On évite les HELP !! dans le titre et on met [R] pour Résolu Evil or Very Mad




______________________________________________________
AffPng.exe , StringBetween.exe , Hex2Png.exe
Répondre en citant
Message [R] Comment faire pour connaitre le nombre de ligne ? 
Xenoxis a écrit:
Une autre façon pour plusieurs fichiers :

Code:

@echo off
setlocal ENABLEDELAYEDEXPANSION

for %%A in (
"Ton fichier entre guillemet"
"Un autre fichier sur une autre ligne ! Pas 2 fichier sur la même ligne"
) do (
set /a Lines=0
for /f "tokens=* delims=" %%B in (%%~A) do set /a Lines+=1
echo;%%~A : !Lines! lignes)
pause>NUL


Okay


Version "optimisé" :
Code:

@echo off
setlocal ENABLEDELAYEDEXPANSION
 
for %%A in (
"Ton fichier entre guillemet"
"Un autre fichier sur une autre ligne ! Pas 2 fichier sur la même ligne"
) do (
set Lines=
for /f "tokens=2 delims=:" %%B in ('find /v /c "" "%%~A"') do set /a Lines=%%B
echo;%%~A : !Lines! lignes)
pause>NUL


Okay




______________________________________________________
Coucou, tu veux voir mon Site Web ?? Mort de Rire
Visiter le site web du posteur Skype
Message [R] Comment faire pour connaitre le nombre de ligne ? 


Montrer les messages depuis:
Répondre au sujet Page 1 sur 1
  



Index | créer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Copyright 2008 - 2016 // Batch