Numerotation des lignes en programmation shell

Fermé
mohamed - Modifié le 8 mai 2018 à 15:54
 Utilisateur anonyme - 17 mai 2018 à 16:43
Bonjour, svp j'essaie de numéroter les taches que j'insère dans mon fichier.txt mais j'y arrive pas.Pouvez-vous m'aider à trouver une solution?voici mon code:
#!/bin/bash

echo " Vos donnée seront stockée dans le repertoire Tache "
mkdir Tache
cd Tache
touch fichier.txt


read -p" Veuillez insérer votre tache: " tach
echo " $tach  "  >>fichier.txt
cpt=1
while read tach
do
echo " ${cpt} ${tach} "
(( cpt++ ))
done >>fichier.txt

echo -n " tache enregistrer avec succes! "
echo -n "voulez vous continuer Y/N: "
read ouinon
if [ "$ouinon" = "y" ] || [ "ouinon" = "Y" ] ; 
then
for ouinon in "y"
do
    read -p" Veuillez insérer votre tache: " tach
echo " $tach " >>fichier.txt
echo -n " tache enregistrer avec succes! "
done
 elif [ "$ouinon" = "n" ] || [ "ouinon" = "N" ] ;
  then
echo "Ok, bye! "
fi 
done >>fichier.txt




A voir également:

3 réponses

Nyctaclope Messages postés 5315 Date d'inscription dimanche 6 avril 2008 Statut Membre Dernière intervention 11 décembre 2022 1 250
8 mai 2018 à 16:36
Bonjour,
sans doute quelque chose du genre :
echo " ${cpt} $tach " >>fichier.txt
à tester ...
mais tout dépend de l'exploitation que tu veux en faire par la suite ..
A+
0
bsr merci bien pour votre attention ! je me met au travail !bonne suite
0
bsr j'ai tester le code et essayé quelques modifications mais ca marche pas la tache est numérotée mais repeté plusieurs fois.je compte juste liste les taches inserées avec l'appel d'une fonction mais je tient à numéroter les taches d'abord.merci pour votre attention.
0
UnGnU Messages postés 1158 Date d'inscription lundi 2 mai 2016 Statut Contributeur Dernière intervention 22 décembre 2020 157 > mohamed
16 mai 2018 à 10:36
Salut,

Petite question (qui rejoint celle de zipe31 ci-dessous) :
Arrives-tu à faire une boucle infinie qui te demande d'insérer une tâche et que tu puisses arrêter à tout moment ?
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
8 mai 2018 à 16:41
Salut,

Avant de vouloir faire des choses plus ou moins compliquées, il faudrait déjà t'assurer que ton script puisse faire une boucle "tant que" (
while
) qui ajoute bien des tâches tant qu'on le lui demande et qui s'arrête lorsqu'on le souhaite.

Quand ça ça marchera, tu seras alors à même de t'inquiéter de numéroter chaque tâche ajoutée ;-\

Une piste, avec une boucle
while true
utilisée conjointement avec
case…esac
on utilise souvent les commandes
continue
et
break

0
ok merci bien pour votre attention!je vais corriger cela
0
Exileur Messages postés 1475 Date d'inscription mercredi 31 août 2011 Statut Membre Dernière intervention 16 décembre 2022 150
17 mai 2018 à 11:27
Salut,

Si tu peux te le permettre, tu peux écrire toutes tes taches et faire le compte à la fin !

Affiche 1 premiére tache (ligne)
taches=$(cat -n fichier.txt)


Affiche le nombre total de taches (lignes)
nb_taches=$(cat fichier.txt |wc -l)


A plus,
0
Utilisateur anonyme
17 mai 2018 à 16:43
nl fichier

wc -l <fichier
0