Précédent   Forum des professionnels en informatique > Systèmes > Autres systèmes > Unix
Unix Forum d'entraide sur les systèmes Unix et dérivés (*BSD, AIX, etc.). Avant de poster ->F.A.Q BSD F.A.Q. Aix
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 17/02/2010, 17h49   #1
Nouveau Membre du Club
 
Inscription : janvier 2003
Messages : 105
Détails du profil
Informations forums :
Inscription : janvier 2003
Messages : 105
Points : 33
Points : 33
Par défaut while read d'un fichier

Bonjour,

Quand je veux lire un fichier ligne à ligne, j'utilise l'instruction "while read".
Problème, j'ai l'impression que l'instruction me compacte tous les espaces entre les mots.

Par ex: " bla blabla bla" devient dans la boucle "bla blabla bla".

Savez vous comment je peux faire pour avoir les mêmes espaces dans la variable que dans le fichier?

Merci
falcon est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/02/2010, 22h33   #2
Membre Expert
 
Avatar de jlliagre
 
Inscription : juin 2007
Messages : 908
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : juin 2007
Messages : 908
Points : 1 258
Points : 1 258
Montre un bout de script qui montre le problème. A mon avis, tu oublie des parenthèses quelque part.
__________________
ɹǝsn *sıɹɐlos*
jlliagre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/02/2010, 08h52   #3
Nouveau Membre du Club
 
Inscription : janvier 2003
Messages : 105
Détails du profil
Informations forums :
Inscription : janvier 2003
Messages : 105
Points : 33
Points : 33
Bonjour,

Code :
1
2
3
4
while read LINE;
do
   echo "$LINE"
done < $MYFILE
falcon est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/02/2010, 14h00   #4
Membre Expert
 
Avatar de jlliagre
 
Inscription : juin 2007
Messages : 908
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : juin 2007
Messages : 908
Points : 1 258
Points : 1 258
Ok, ce ne sont pas les espaces entre les mots qui sont perdus mais ceux au debut en en fin de ligne. Pour résoudre le problème, soit tu ajoute
avant ta boucle, soit tu remplace
par
__________________
ɹǝsn *sıɹɐlos*
jlliagre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/02/2010, 14h41   #5
Nouveau Membre du Club
 
Inscription : janvier 2003
Messages : 105
Détails du profil
Informations forums :
Inscription : janvier 2003
Messages : 105
Points : 33
Points : 33
merci beaucoup, ca fonctionne.
falcon est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +1. Il est actuellement 06h17.


 
 
 
 
Partenaires

Hébergement Web