J'aimerais pouvoir exécuter un script à l'arrière-plan (c'est-à-dire sans bloquer le processus de construction) lorsque je construit et exécutez une application iOS dans le simulateur. J'ai essayé Des idées? P> Osascript / chemin / path / to / script et code>, ainsi que l'ampleur d'un script de shell distinct qui fait la même chose, mais aucun des ni n'ont travaillé; La construction s'arrête et je dois forcer cesse Xcode. P>
3 Réponses :
Incase Vous êtes toujours intéressé. P>
Ce sont les étapes que vous devez suivre: 1. Changez l'extension .sh de votre script à .command 2. Plutôt que d'appeler /path/to/script.sh Vous commencez maintenant à utiliser "Ouvrir /path/to/script.command" P>
C'est à peu près beaucoup. P>
Ceci démarrera une nouvelle fenêtre de terminal et exécutera le script que vous le souhaitez. P>
Cela nécessite des privilèges d'accès
J'ai eu le même problème à exécuter un script d'arrière-plan dans le cadre de la phase de construction, mais ce qui suit fonctionne dans mon cas. Le script fonctionne en arrière-plan pendant que mon application fonctionne. Apparemment, vous devez rediriger la sortie standard en plus de l'utilisation du "&". Utilisez le format suivant. (Mon script est situé dans le répertoire '~ / Desktop / Splint_Server /')
~/Desktop/splint_server/run.sh > ~/Desktop/splint_server/test 2>&1 &
Si vous ne vous souciez pas de votre sortie de votre script ~ / Desktop / Splint_Server / Run.SH> / dev / null 2> & 1 & code> fonctionne aussi.
Ceci n'est pas correct pour xcode 8.2.1. Code> plus, ce qui attend que tous les processus engendrés sont terminés. Vous pouvez tester cela en ajoutant SLEEP 200 & CODE> et voyez ce qui se passe.
Vous pouvez utiliser post-actions de la construction dans le paramètre Schémas. P>
"Sleep 100 &" fonctionne bien p>
Toute chance avec ça? J'espérais que vous venez d'ajouter
& code> à la fin de votre commande, mais cela ne ressemble pas à cela.Malheureusement non. Je viens de courir le script de fond quand j'en ai besoin.