Contenu | Rechercher | Menus

Annonce

Le forum rencontre en ce moment quelques soucis de charge, il est possible qu'une erreur soit affichée quand vous postez un message, ne rechargez pas la page au risque de poster une seconde fois votre message

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".

Déjà un an…

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

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, à 20:16

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, à 20:21

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, à 20:32)

Hors ligne

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

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, à 21:47)

Hors ligne

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

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)


GUL les mardis à Bordeaux : Giroll
Hide in your shell, scripts & astuces :  applications dans un tunnelsmart wgettrouver des pdfinstall. auto de paquetssauvegarde auto♥ awk
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdnGMT-4

Hors ligne

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

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

Haut de page ↑