Contenu | Rechercher | Menus

Annonce

Le forum a une nouvelle maison !
Le forum a été migré sur un nouvel hébergement. Si jamais vous trouvez le moindre problème, n'hésitez pas à nous en faire part !
Si vous rencontrez des soucis à rester connecté sur le forum (ou si vous avez perdu votre mot de passe) déconnectez-vous et reconnectez-vous depuis cette page, en cochant la case "Me connecter automatiquement lors de mes prochaines visites".

#1 Le 05/02/2013, à 19:03

D3XT3R
Membre

Problème lecture ligne par ligne

Bonsoir,

Pour un certain besoin, je dois lire un fichier ligne par ligne et le traiter comme ça :

while read l
do
ok=$(echo $l |sed -e "s/ \{1,\}/./g")
echo $ok >> final
done < "temp_$1.txt"

Cependant, le fichier "final" ne prend jamais la dernière ligne de mon fichier, et si le fichier a une seule ligne, il ne la prend pas.. j'ai cherché.. en vain.

Merci à vous

Hors ligne

#2 Le 05/02/2013, à 19:16

pingouinux
Membre

Re : Problème lecture ligne par ligne

Bonsoir,
Je viens de tester ton script, la dernière ligne du fichier est bien prise en compte.

Remarque : Il est préférable de mettre les variables entre " " après echo

Hors ligne

#3 Le 05/02/2013, à 19:21

D3XT3R
Membre

Re : Problème lecture ligne par ligne

Merci grâce à toi, je sais au moins et je viens de tester, le script marche, c'est lors du remplissage en PHP que cela bug, je vais chercher et revient.

Edit : Le fichier en sortie de mon script PHP n'était pas correct, finalement tout marche pour le mieux.
Je passe en résolu, merci

Dernière modification par D3XT3R (Le 05/02/2013, à 19:32)

Hors ligne

#4 Le 05/02/2013, à 19:43

pingouinux
Membre

Re : Problème lecture ligne par ligne

Pour info, ton script est équivalent à ceci :

sed -e "s/ \{1,\}/./g" "temp_$1.txt" >final

Dernière modification par pingouinux (Le 05/02/2013, à 20:47)

Hors ligne

#5 Le 05/02/2013, à 20:33

nesthib
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn

Re : Problème lecture ligne par ligne

ou plutôt à ceci :

sed -e "s/ \+/./g" f "temp_$1.txt" >final

(ou >>final si tu veux cumuler à chaque lancement)

@pingouinux : attention {1,} est équivalent à + mais {1,1} est inutile (équivalent à ne rien mettre)

Hors ligne

#6 Le 05/02/2013, à 20:46

pingouinux
Membre

Re : Problème lecture ligne par ligne

@nesthib  #5 : Tu as raison, j'ai fait par erreur un copier-coller d'un de mes essais. Je corrige.

Hors ligne