Pour traiter ligne par ligne le contenu d'un fichier

Fermé
amellemq Messages postés 3 Date d'inscription mercredi 1 janvier 2014 Statut Membre Dernière intervention 5 janvier 2014 - 3 janv. 2014 à 17:02
 Utilisateur anonyme - 5 janv. 2014 à 13:56
Bonsoir;

Je veux récupéré chaque ligne d'un fichier avec les comandes tail -n et head -n .
On suppose que mon fichier "tmp.txt" possède 36 lignes mon programme est donc:

i= $36
while test $i -ge $1
do
if test -d $(tail -$i tmp.txt | head -1)
then echo " un repertoire"
else echo " n'importe quoi"
fi
i=$(($i-1))
done

Le probleme est dans "tail -$i" exactement "$i" ca ne veut pas marcher??
comment fair???
A voir également:

3 réponses

Utilisateur anonyme
4 janv. 2014 à 05:19
salut,

Le probleme est dans "tail -$i" exactement "$i" ca ne veut pas marcher??
le problème, c'est que pour lire un fichier, en fait, on fait ainsi :
while read line; do echo "traitement $line"; done <fichier
0
amellemq Messages postés 3 Date d'inscription mercredi 1 janvier 2014 Statut Membre Dernière intervention 5 janvier 2014
5 janv. 2014 à 12:42
Je connai cet méthode! je n'sais pas pourquoi mais je veux bien utilisé tail -$i! mais merci en tout cas
0
i= $36
?
$1
?
mets la substitution de commandes entre guillemets : on ne sait jamais, peut-être une ligne contiendra-t-elle plusieurs mots.
0