Passar variável de filho para pai em KSH
Eu tenho que trabalhar com o KSH (yeah that hell shell). Eu preciso usar um garfo, uma sub-rotina da seguinte forma:
#!/bin/ksh
PIPE=PIPE_$
PIPE_ERR=PIPE_ERR_$
export TEST_FILS
$(. ./LanceFils.ksh 2>${PIPE_ERR} 1>${PIPE}) &
PID_CHILD=$!
echo "Nom du fichier PIPE: ${PIPE}"
echo "Processus fils : " $!
wait ${PID_CHILD}
echo "Code retour: " $?
echo "Sortie standard de PROC_FILS : " $(cat ${PIPE})
echo "Sortie d'erreur(s) de PROC_FILS : " $(cat ${PIPE_ERR})
echo "Contenu de TEST_FILS: ${TEST_FILS}"
rm -rf ${PIPE}
Conteúdo de LanceFils.ksh
#!/bin/ksh
TIMEOUT=5
export TEST_FILS
echo "Je suis le script fils et j'attends ${TIMEOUT} secondes"
echo "Nom du pipe du pere ${PIPE}"
sleep ${TIMEOUT}
TEST_FILS="Je suis le fils"
echo "Salut c'était bien !!!"
exit 10
Eu sei que isso não funciona, btw eu tento encontrar uma maneira de fazer isso funciona ... No meu código você pode ver que eu quero compartilhar variável TEST_FILS entre filho e pai. Existe uma maneira no KSH para compartilhar uma variável, como em perl usando "share" ou se eu tiver que usar um pipe como em C?
Obrigado.