2 votes

Ouvrir Terminal.app mais maintenir ouvert ?

J'ai un shell script qui fonctionne sur mon mac ( ./go ), il ouvre une session ssh sur un raspberry pi puis exécute un script qui diffuse de la vidéo depuis le raspberry pi vers un port UDP sur le mac.

J'ai également besoin que le mac exécute une réception script ( ./tsplay ) afin qu'il puisse visualiser la vidéo diffusée.

Le problème est que j'ai essayé d'utiliser la commande open -a Terminal.app ./tsplay avant que la session SSH ne soit lancée, une nouvelle fenêtre de terminal s'ouvre mais elle n'attend pas l'arrivée des données du flux et se termine - [Processus terminé].

#!/bin/bash

source network.conf

rm remote.conf

if [ "$1" != "" ] 
then
  sed "s/FRAMERATE=25/FRAMERATE=$1/" video.conf > remote.conf
else
  cp video.conf remote.conf
fi

open -a Terminal.app ./tsplay 

date
echo "###### Network Settings ######" >> remote.conf
echo export TCPPORT=$TCPPORT >> remote.conf
echo export UDPPORT=$UDPPORT >> remote.conf
echo export RX_IP=$RX_IP >> remote.conf
echo export NOW=\"`date +%F" "%T`\" >> remote.conf

#echo exit >> remote.conf

chmod +x remote.conf

echo Copy script to $TX_IP
scp remote.conf $USER@$TX_IP:/home/pi

echo Run Script
ssh $USER@$TX_IP ./ustream
ssh $USER@$TX_IP

1voto

Lance Harper Points 1622

Pourquoi voulez-vous vous présenter ? tsplay dans un terminal de toute façon ? Il s'agit bien d'une application graphique si elle affiche une vidéo ? Pourquoi ne pas faire une mise en veille pendant un certain temps pour permettre au Pi de commencer à envoyer des données, puis de démarrer tsplay à recevoir ?

fi
...
(sleep 5; ./tsplay ) &
...
date

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X