locked
Batch, Comment Extraire les valeurs des 10 premieres lignes d'un fichier texte ? RRS feed

  • Question

  • Bonjour,

    Via un batch, comment lui faire lire chaque valeur des 10 premieres lignes dans un fichier texte (for /F ?) et en faire des variables (valeur1, valeur2, valeur3, valeur4, ...) pour ensuite les utiliser dans une commande donc une sorte de 

    if ( 1e_valeur_a_recuperer_ligne1 GEQ 97 2e_valeur_a_recuperer_ligne2 GEQ 97 3e_valeur_a_recuperer_ligne3 GEQ 97 4e_valeur_a_recuperer_ligne4 GEQ 97 5e_valeur_a_recuperer_ligne5 GEQ 97 6e_valeur_a_recuperer_ligne6 GEQ 97 7e_valeur_a_recuperer_ligne7 GEQ 97 8e_valeur_a_recuperer_ligne8 GEQ 97 9e_valeur_a_recuperer_ligne9 GEQ 97 10e_valeur_a_recuperer_ligne10 GEQ 97

    ) do blablablabla

    merci d'avance ;)


    mardi 27 novembre 2012 14:47

Réponses

  • Très moche, mais avec quelque chose du type :

    @echo off
    for /f "delims=" %%i in ('type "C:\mon_fichier_texte.txt"') do (
    set VrLgn=%%i & set /a compt+=1 & call :setVariable )
    
    echo %variable1%
    echo %variable2%
    echo %variable3%
    echo %variable4%
    
    
    :setVariable
    if %compt% equ 1 set variable1=%VrLgn%
    if %compt% equ 2 set variable2=%VrLgn%
    if %compt% equ 3 set variable3=%VrLgn%
    if %compt% equ 4 set variable4=%VrLgn%

    Tu devrais t'en sortir.

    • Marqué comme réponse Nicolas C13160 mercredi 28 novembre 2012 09:30
    mardi 27 novembre 2012 16:19

Toutes les réponses

  • Très moche, mais avec quelque chose du type :

    @echo off
    for /f "delims=" %%i in ('type "C:\mon_fichier_texte.txt"') do (
    set VrLgn=%%i & set /a compt+=1 & call :setVariable )
    
    echo %variable1%
    echo %variable2%
    echo %variable3%
    echo %variable4%
    
    
    :setVariable
    if %compt% equ 1 set variable1=%VrLgn%
    if %compt% equ 2 set variable2=%VrLgn%
    if %compt% equ 3 set variable3=%VrLgn%
    if %compt% equ 4 set variable4=%VrLgn%

    Tu devrais t'en sortir.

    • Marqué comme réponse Nicolas C13160 mercredi 28 novembre 2012 09:30
    mardi 27 novembre 2012 16:19
  • Merci beaucoup 

    Suite à ta réponse en modifiant déja le coup de passer aux 10 premieres ligne de mon fichier texte 

    j'ai fait ça mais cela ne fonctionne pas où est mon erreur ?

    @echo off
    for /f "delims=" %%i in ('type "C:\Users\admin\Desktop\test\stats2.txt"') do (
    set VrLgn=%%i & set /a compt+=1 & call :setVariable )
    
    
    if %variable1% GEQ 95 goto l2 
    exit	
    :l2
    if %variable2% GEQ 95 goto l3
    exit
    :l3
    if %variable3% GEQ 95 goto l4
    exit
    :l4
    if %variable4% GEQ 95 goto l5
    exit
    :l5
    if %variable5% GEQ 95 goto l6
    exit
    :l6
    if %variable6% GEQ 95 goto l7
    exit
    :l7
    if %variable7% GEQ 95 goto l8
    exit
    :l8
    if %variable8% GEQ 95 goto l9
    exit
    :l9
    if %variable9% GEQ 95 goto l10
    exit
    :l10
    if %variable10% GEQ 95 goto lfin
    exit
    :lfin
    echo cpumax > "C:\Users\admin\Desktop\test\cpumax.txt"
    pause
    
    :setVariable
    if %compt% equ 1 set variable1=%VrLgn%
    if %compt% equ 2 set variable2=%VrLgn%
    if %compt% equ 3 set variable3=%VrLgn%
    if %compt% equ 4 set variable4=%VrLgn%
    if %compt% equ 5 set variable5=%VrLgn%
    if %compt% equ 6 set variable6=%VrLgn%
    if %compt% equ 7 set variable7=%VrLgn%
    if %compt% equ 8 set variable8=%VrLgn%
    if %compt% equ 9 set variable9=%VrLgn%
    if %compt% equ 10 set variable10=%VrLgn%

    mercredi 28 novembre 2012 11:38
  • je retire ce que j'ai dit cela fonctionne c'est juste que je restais dans la même instance CMD donc les mêmes variables

    merci en tout cas

    vendredi 30 novembre 2012 08:28