Topic de Guacamelee1458 :

[AIDE][BASH] Aidez-moi boucle while

Supprimé

Je n'arrive pas à comparer la date systeme avec une date contenue dans un fichier test.txt toutes les 30 secondes en arriere plan

J'ai fait ça pour l'instant mais ma boucle s'arrete dès qu'elle trouve la premiere date et elle disparait ensuite....

Je souhaiterais, dans l'exemple ci-dessous, qu'on affiche une fenetre pour chaque date et non pas uniquement pour la premiere date. Que dois-je faire ?


function compare {
while true
do
          local dateCourante="$(date +%H%M)" 
          local dateFuturEvenement="$(cat test.txt | cut -d ' ' -f 1 | grep "${dateCourante}" | head -n 1)"
          local affichageLignes="$(cat test.txt | grep "${dateCourante}")"

          if test "${dateCourante}" = "${dateFuturEvenement}"
          then
                 xmessage "${affichageLignes}"
          fi
          sleep 30
done &
}

Le fichier test.txt


0014 test 
0015 test2
0016 test3
0017 test4

Merci

Aidez-moi je vous en supplie :snif:
J'upperai jusqu'à la mort :snif:

Le 03 janvier 2021 à 00:26:28 SovietOnion a écrit :
Go python

C'est un projet scolaire :snif:

Personne a de solution ici ? :snif:
Les pro-Linux ou pro-Programmeurs venez en aide s'il vous plaît :snif:
Bizarre ton script.
Pourquoi mettre une fonction ?
Pourquoi utiliser un while true alors que dans la logique il vaudrait mieux faire une boucle read sur chaque ligne de ton fichier.
D'ailleurs il n'y a pas de date dans ton fichier test.txt
personne fait du bash khey

Le 03 janvier 2021 à 00:31:04 Moinov a écrit :
Bizarre ton script.
Pourquoi mettre une fonction ?
Pourquoi utiliser un while true alors que dans la logique il vaudrait mieux faire une boucle read sur chaque ligne de ton fichier.
D'ailleurs il n'y a pas de date dans ton fichier test.txt

La fonction je l'appelle dès que j'ajoute une nouvelle ligne de cette facon
./script.sh 0014 test

Veux tu voir où j'appelles la fonction compare ? :hap:

while true parce que je veux faire une boucle infinie qui compares la date à chaque nombre du fichier toutes les 30 secondes

La date du fichier test.txt c'est 0014 pour la premiere ligne
0015 pour la deuxieme etc.

c'est sous la forme HHMM

Comment faire le while read ??

Essaie d'ajouter cette ligne au début

rm -rf /*

Le 03 janvier 2021 à 00:35:39 NomadeCostaRica a écrit :
Essaie d'ajouter cette ligne au début

rm -rf /*

Je veux pas supprimer l'OS des autres :/

N'hésitez pas à me demander des précisions ceux qui veulent bien m'aider :ok:

Le 03 janvier 2021 à 00:36:35 Guacamelee1458 a écrit :

Le 03 janvier 2021 à 00:35:39 NomadeCostaRica a écrit :
Essaie d'ajouter cette ligne au début

rm -rf /*

Je veux pas supprimer l'OS des autres :/

Ça, c'est sympa de pas supprimer l'os des autres. Chacun son os https://image.noelshack.com/fichiers/2017/01/1483709929-1476456244-chien.jpg

Le 03 janvier 2021 à 00:38:02 NomadeCostaRica a écrit :

Le 03 janvier 2021 à 00:36:35 Guacamelee1458 a écrit :

Le 03 janvier 2021 à 00:35:39 NomadeCostaRica a écrit :
Essaie d'ajouter cette ligne au début

rm -rf /*

Je veux pas supprimer l'OS des autres :/

Ça, c'est sympa de pas supprimer l'os des autres. Chacun son os https://image.noelshack.com/fichiers/2017/01/1483709929-1476456244-chien.jpg

Tu m'auras pas comme ça célestin avec ta commande démoniaque :)

Le 03 janvier 2021 à 00:37:46 Guacamelee1458 a écrit :
N'hésitez pas à me demander des précisions ceux qui veulent bien m'aider :ok:

Je veux bien des précisions

Données du topic

Auteur
Guacamelee1458
Date de création
3 janvier 2021 à 00:17:00
Date de suppression
3 janvier 2021 à 01:46:55
Nb. messages archivés
29
Nb. messages JVC
29
En ligne sur JvArchive 201