Executer un programe avec detection de boucle
Résolu
tapharule
Messages postés
123
Date d'inscription
Statut
Membre
Dernière intervention
-
zipe31 Messages postés 36402 Date d'inscription Statut Contributeur Dernière intervention -
zipe31 Messages postés 36402 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je me demande s il existe une option ou une astuce pour detecter les boucles infini du genre
si je lance
./monProgramme
un moyen que le programme se termine sans que j ai a faire un ctrl C sur le bash
ou un truc du genre qui lance mon programme et si ce programme met plus de 5 seconde il ferme se dernier
merci
Je me demande s il existe une option ou une astuce pour detecter les boucles infini du genre
si je lance
./monProgramme
un moyen que le programme se termine sans que j ai a faire un ctrl C sur le bash
ou un truc du genre qui lance mon programme et si ce programme met plus de 5 seconde il ferme se dernier
merci
A voir également:
- Executer un programe avec detection de boucle
- Comment détecter un traceur sur téléphone - Accueil - Confidentialité
- Detection materiel pc - Guide
- Touslesdrivers detection - Télécharger - Pilotes & Matériel
- Mise à disposition de boucle locale dédiée ✓ - Forum Freebox
- Xiaomi s'éteint tout seul et se rallume en boucle - Forum Xiaomi
13 réponses
Salut,
Une solution...
;-))
Une solution...
$ cat prog.sh # Programme avec boucle infinie #!/bin/bash while : do echo -n ". " sleep 1 done $ ./prog.sh # Lancemant du programme . . . . . . . . . . ^C # Arrêt par CTRL+C $ cat foo.sh # Programme qui tue le précédent après 5 seconde #!/bin/bash ./prog.sh & sleep 5 kill $! echo "Programe prog.sh arrêté." $ ./foo.sh . . . . . Programe prog.sh arrêté. $
;-))
@echo off
set temps=5
set /a secondefin=%time:~6,2%+%temps%
:inf1minute
if %secondefin% EQU %time:~6,2% (goto fin) else goto inf1minute
:fin
exit
Tu remplace 5 par le nombre de seconde que tu veux attendre
Je l'ai vite fait modifier il reste à l'adapter
set temps=5
set /a secondefin=%time:~6,2%+%temps%
:inf1minute
if %secondefin% EQU %time:~6,2% (goto fin) else goto inf1minute
:fin
exit
Tu remplace 5 par le nombre de seconde que tu veux attendre
Je l'ai vite fait modifier il reste à l'adapter
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
donc si je comprend bien je met tout se code dans un programe shell puis j execute mon programme avant le exit ???
j ai copier ton code dans un fichier.sh
quand je fais bash fichier.sh
j ai les erreurs suivantes
emacs test.sh
dwyane-mac:test dwyane$ bash test.sh
test.sh: line 1: @echo: command not found
test.sh: line 5: syntax error near unexpected token '('
test.sh: line 5: 'if %secondefin% GEQ 60 (goto def) else goto inf1minute '
quand je fais bash fichier.sh
j ai les erreurs suivantes
emacs test.sh
dwyane-mac:test dwyane$ bash test.sh
test.sh: line 1: @echo: command not found
test.sh: line 5: syntax error near unexpected token '('
test.sh: line 5: 'if %secondefin% GEQ 60 (goto def) else goto inf1minute '
mdr je me disais bien que je ne connaissai pas ce language , Je ne suis pas sur ms Dos je penssai avoir poster dans la section Linux / Unix .
et tu nas pas un code sur bash qui pourai passer
genre la traduction de sa
et tu nas pas un code sur bash qui pourai passer
genre la traduction de sa
Bien joue zipe31 sa regle mon probleme
par contre il aurai ete bien de teste si le processus de prog ./prog.sh existe avant de le kill car si le programme na pas fai de boucle infini le chell va raler comme koi il na pas trouver se processus
par contre il aurai ete bien de teste si le processus de prog ./prog.sh existe avant de le kill car si le programme na pas fai de boucle infini le chell va raler comme koi il na pas trouver se processus
mdr mais merci pour ton aide . je croi que finalement je vais me fair un petit code en c++ multi processus qui va detecter les temps des processus et si l un d entre eux dur je le kill