Bash : lancer 2 bash en boucle sur 2 consoles TTY

Résolu/Fermé
marco - 11 avril 2013 à 00:39
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 - 12 avril 2013 à 11:08
Bonjour à tous,

J'ouvre une console en tant que root (sous debian)

Dans un répertoire /home/moi, j'ai 2 scripts bash qui doivent tourner en root et en même temps.

Le script 1 contient une boucle infinie while.
Le script 2 doit détruire le script 1 et relancer le script 1
Le script 2 doit rester en boucle infinie.

Comment faire?
Je me demandais si il est possible de lancer à partir d'un login root les 2 scripts en même temps peut-être sous la forme de lancement sur plusieurs TTY, mais je ne sais pas comment faire.

Pouvez vous m'aider?
Merci à vous tous
A voir également:

5 réponses

mamiemando Messages postés 33076 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 17 avril 2024 7 748
11 avril 2013 à 10:42
Tu peux lancer depuis un script principal d'autres scripts en utilisant l'opérateur &.
http://forum.mandriva.com/#p798166

Bonne chance
0
Bonjour,

Si je comprends bien :
a. mon script 1 est en while true que je lance manuellement
b. mon script 2 est en boucle while qui possede un sleep de 10 minutes et qui kill mon script 1

Donc je fais un 3eme avec les lancements de :
./script1.sh & ./script2.sh

Est-ce cela?

Par contre, en lancant à la main script2 (qui kill le script1) je kill bien, mais le relancement ne se fait pas.

Aurais tu une idée?
Merci pour ton aide
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
11 avril 2013 à 14:38
hello
il faut relancer script1 depuis script2 puisqu'il a été tué
0
Bonjour,

merci mais cela ne fonctionne toujours pas

pff j'ai du mal, mais j'ai avancé:

J'ai reconsidéré cette fois la chose :

a. j'ai un script A qui est en while infini.

b. Ce script lance un autre script dans cette boucle
--> pas de probleme, sauf que parfois un des deux plante

Alors, j'ai développé un script 2 pour tuer le script A avec killall

Ce script 2 contient une autre boucle while infinie de 30 minutes qui killall les process et relance le script 1

Je vais voir si ca fonctionne

Si oui, ouf, mais j'aurai eu du mal, si entre temps tu as une autre ruse, je suis preneur.
PS Laissons tomber dans le cron car cela ne fonctionne pas, dommage
0
rebonjour à vous deux,

Bon à priori avec le $ inséré dans le sh qui est appelé du script principal, cela a l'air de fonctionner.
J'ai ajouté un bip pour être certain que tout soit redemarré, et ca fonctionne.

Merci à vous deux pour le tuyau

A bientôt
Marco
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
12 avril 2013 à 11:08
on peut aussi faire:
dans script 1 tu sauves le PID : echo $$ > /tmp/pid
dans script 2 tu testes ou tues le PID qui est dans /tmp/pid
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mamiemando Messages postés 33076 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 17 avril 2024 7 748
11 avril 2013 à 21:32
Bonne continuation :-)
0