Re: lire ds un fichier (en bash)

Page principale

Répondre à ce message
Auteur: Edgar Bonet
Date:  
À: Liste Guilde
Sujet: Re: lire ds un fichier (en bash)
Le jeudi 16 octobre, Julien VIVENOT a écrit :
> Bonjour, je suis en train de faire un petit script bash, et j'ai
> besoin soit de lire ligne par ligne un fichier soit de mettre tout le
> fichier directement dans une variable.
> Cependant, 'read ma_var < mon_fichier' ne me mets que la première ligne et
> je n'arrive pas à aller plus loin dans la lecture. Comment dois je faire ?


pour lire ligne par ligne :

    while read ma_var; do
        echo "lu $ma_var"
    done < mon_fichier


pour lire tout d'un coup :

    read -d "^@" ma_var < mon_fichier
    echo "lu $ma_var"


où tu remplaces ^@ par un caractèer ASCII NUL, ou d'ailleurs n'importe
quel caractère qui ne se trouve pas dans ton fichier.

Edgar.

-- 
Edgar Bonet           Maison : 04 76 21 29 16    Bureau : 04 76 88 10 96
3 rue Jean Prévost    Mobile : 06 77 19 79 39    Fax    : 04 76 88 11 91
38000 Grenoble        guilde@???     www.edgar-bonet.org