Contenu | Rechercher | Menus

Annonce

Si vous rencontrez des soucis à rester connecté sur le forum (ou si vous avez perdu votre mot de passe) déconnectez-vous et reconnectez-vous depuis cette page, en cochant la case "Me connecter automatiquement lors de mes prochaines visites". Attention, le forum rencontre actuellement quelques difficultés. En cas d'erreur 502, il ne faut pas re-valider l'envoi d'un message ou l'ouverture d'une discussion, au risque de créer un doublon.

La section divers se réorganise ! De nouvelles sous-sections à venir. (plus d'infos + donner son avis)

#1 Le 04/12/2009, à 17:08

Hizoka

scripts qui s'appellent et terminal coincé

Bonsoir,

je suis face à un problème, mon terminal ne reprend pas la main lorsque des scripts s'appellent entre eux...

soit 2 fichiers :
- fichier a.sh :

#! /bin/bash

function ouesh()
{
echo "Ouesh gros, comment va ?"
} 

if [[ -n ${1} ]]
then
	$1
else
	echo "pipi popo papa pupu"
	bash b.sh &
fi

exit

- fichier b.sh :

#! /bin/bash

if [[ -n $(ps ax | grep "a.sh" | grep -v "grep") ]]
then
	kill $(ps ax | grep "a.sh" | grep -v "grep" | sed 's/^ //' | cut -d" " -f1 | tr '\n' ' ')
fi

bash a.sh ouesh &

exit

si je lance a.sh, il va bien afficher le texte par défaut suivit du texte de la fonction, mais au finale aucune reprise de contrôle du terminal.

Quel est le problème ?

Ce n'est évidemment qu'un exemple car j'ai le même problème dans un script beaucoup plus gros.

Hors ligne

#2 Le 04/12/2009, à 18:35

sputnick

Re : scripts qui s'appellent et terminal coincé

Je te recommande cette lecture sur les coprocesses : http://bash-hackers.org/wiki/doku.php/syntax/keywords/coproc
C'est une nouvelle feature de bash4 qui permet des communications inter processus.


bashfr.org(random);
<arciks1994> dou tu connai qel age j'ai ?

Hors ligne

#3 Le 06/12/2009, à 18:13

Totor

Re : scripts qui s'appellent et terminal coincé

Pour info, je n'ai pas ton soucis ...:P

Dernière modification par Totor (Le 06/12/2009, à 18:13)


-- Lucid Lynx --

Hors ligne

#4 Le 06/12/2009, à 20:57

n3o51

Re : scripts qui s'appellent et terminal coincé

Bonsoir j'ai la version

3.2.39(1)-release

de bash dois je installer la 4.0 ou c'est pas nécessaire ?


Welcome to the real world
________________________________

Hors ligne

#5 Le 06/12/2009, à 21:11

Hizoka

Re : scripts qui s'appellent et terminal coincé

si vous n'avez pas le même problème, à quoi cela pourrait il être dû ?!

Hors ligne

#6 Le 06/12/2009, à 22:04

Totor

Re : scripts qui s'appellent et terminal coincé

je sais pô !

echo ${BASH_VERSION[@]}
3.2.48(1)-release

-- Lucid Lynx --

Hors ligne

#7 Le 07/12/2009, à 01:33

Link31

Re : scripts qui s'appellent et terminal coincé

sputnick a écrit :

Je te recommande cette lecture sur les coprocesses : http://bash-hackers.org/wiki/doku.php/syntax/keywords/coproc
C'est une nouvelle feature de bash4 qui permet des communications inter processus.

C'est même dans ZSH depuis longtemps et je ne connaissais même pas O_o

Dire que ça aurait pu me servir, quand j'essayais vainement d'émuler la même chose à coup de while read line et autres pipes nommés...

Hors ligne

#8 Le 07/12/2009, à 11:23

Hizoka

Re : scripts qui s'appellent et terminal coincé

4.0.33(1)-release

personne n'a la même version comment c'est possible ca...

Hors ligne

Haut de page ↑