Bonjour.

Je tente quelques petites expériences sur un raspberry pi et j'ai fait ce BASh mais qui ne fonctionne que partiellement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/bin/bash
heure=$(date +%H:%M) #enregistre l'heure immédiate dans la variable heure
jour=$(date +%Y-%m-%d) #enregistre la date du  jour dans la variable jour
echo power_on_cron has been triggered the $jour at $heure >> /home/pi/util/debug_cron_log #enregistre dans un fichier de log le jour et l'heure ou mon bash à été exécuté
mosquitto_pub -h localhost -t relay -m "ON at $jour : $heure" #publie sur le broker mosquitto l'action qui est faite en indiquant le jour et heure de l'action
gpio mode 29 out #détail de l'action qui est faite (configure et actionne la GPIO29 de mon pi) (actionne un relais)
gpio write 29 0

sleep 10 #fait une pause de 10 secondes

gpio write 29 1 # fait de nouvelles action sur la GPIO 29 de mon pi (relache le relais)
heure=$(date +%H:%M) # (est sensenregistre l'heure immédiate dans la variable heure
mosquitto_pub -h localhost -t relay -m "OFF at $jour : $heure"  #(est sensé) publier sur le broker mosquitto l'action qui est faite ainsi que le jour et heure de l'action
Tout se passe bien sauf la partie en rouge.
En effet, j'essaie de mettre à jour l'heure à laquelle le relachement du relais se fait (10 secondes plus tard), mais j'ai la même date et heure qui s'affiche dans mon broker que l'heure à laquelle il a été enclenchée !

Comment puis-je donc mettre à jour la valeur de ma variable heure dans le déroulement de mon code ?