Seulement si le script boucle ou plante, ou un des programmes plante sa gel la suite du démarrage bref sa plainte.
donc je pense lancer le programme normalement et pour les trucs qui puissent planter par exemple l’installation de Virtualbox
ça donne :
function fonction_qui_va_planter() {
while true ;do
echo « bug boucle »
ou
binaire_qui_a_planter
}
function main () {
screen — m fonction_qui_va_planter
}
Autrement je doit passer par un second fichier
Seulement ça ne marche pas. Il y a peux être une autre manière de faire ?
Seulement si le script boucle ou plante, ou un des programmes plante sa gel la suite du démarrage bref sa plainte.
[/quote]
Jusque là je comprend.
[quote=“panthere”]
donc je pense lancer le programme normalement et pour les trucs qui puissent planter par exemple l’installation de Virtualbox
ça donne :
function fonction_qui_va_planter() {
while true ;do
echo « bug boucle »
ou
binaire_qui_a_planter
}
function main () {
screen — m fonction_qui_va_planter
}
Autrement je doit passer par un second fichier
Seulement ça ne marche pas. Il y a peux être une autre manière de faire ?[/quote]
Tu peut appeler ta fonction entre parenthèse ça lance un fork.
Sinon tu peut aussi appeler ta fonction avec un & à la fin ça le détache de processus principal.
fran.b est dans le vrai. seulement c’est pas ce que je veux faire. du moin en tout ca pas kill le programe sans que l’utilisateur puisse regarder ce qui si passe, d’ou l’interet de screen.
#!/bin/sh
fonction traitement ()
{
echo "ici le programe plante, simuler par le signial 19"
kill -s 19 le_pid_duprgrame (-s 18 pour reprendre)
# ici on continue que si le programme c'est terminer sinon on attend.
echo " il pose peu une question que l'utilisateur peut répondre "
echo " pour que ça continue normalement "
}
fonction main ()
{
echo " ça doit rester, soit dans un autre tty, soi dans un screen"
echo " pour que l'utilisateur puisse voir l'erreur, et aux besoins "
echo " répondre aux questions du programme lancé "
echo " aptitude — y " " Evite les questions mai si on élève le — y ça gèle le tout "
traitement
echo " ça continue, traitement n'empêche pas la suite "
}
main
Hello
Finalement je passe par un fichier avec screen.
exemple:
#echo -e "\r\Etape 1" > /dev/tty1
echo "' texte a executer'" >> /monfichier.txt
#echo -e "\r\Termine" > /dev/tty1
chmod +x /monfichier.txt
Ensuite un lien dans /etc/rc2.d et sa roule
sa permet de démarrer la machine et si sa plante l’utilisateur peux ce loguer et aller voir le screen
Les messages son afficher dans le TTY1 également
voila