J'ai deux ensembles de commandes à exécuter à partir de différents répertoires à partir d'un script shell.Comment ouvrir un nouveau terminal par des commandes dans un script shell?
Mon contenu du script shell est ci-dessous:
echo "starting Windshaft cartodb..."
cd /home/user/Windshaft-cartodb/
node app.js development
echo "Windshaft cartodb started."
echo "starting CartoDB SQL API..."
cd /home/user/CartoDB-SQL-API/
node app.js development
echo "CartoDB SQL API started."
Quand je lance le fichier script shell, les 3 premières commandes ont été en cours d'exécution avec succès. Pour exécuter les commandes suivantes, je dois arrêter la commande précédemment exécutée en appuyant sur Ctrl + C. Le traitement de script continue avec echo "Windshaft cartodb started."
seulement après cela.
Mon problème est le suivant: Sans arrêter les commandes précédemment exécutées, j'ai besoin d'exécuter les commandes après les commandes ci-dessous dans un nouveau terminal. Comment ouvrir un nouveau terminal par des commandes dans un script shell?
Vous pouvez exécuter le premier 'noeud app.js development' en arrière-plan avec' & 'à la fin de la commande. donc 'node app.js development &' – 7171u
Si j'utilise & il passe à la commande suivante, mais il déclenche une erreur après l'exécution du jeu de commandes suivant [2015-12-16 06: 49: 12.890] [ERREUR] [par défaut] - Exception non interceptée: Erreur: écouter EADDRINUSE à errnoException (net.js: 904: 11) à Server._listen2 (net.js: 1042: 14) à écouter (net.js: 1064: 10) à net. js: 1146: 9 à dns.js: 72: 18 à process._tickCallback (node.js: 415: 13) à Function.Module.runMain (module.js: 499: 11) au démarrage (nœud. js: 119: 16) à node.js: 902: 3 – Harnish