Processus en cours d'exécution en arrière-plan après la fermeture du terminal

Je suis en train d'exécuter un script dans le fond, même après la fermeture du terminal. J'ai cherché et cherché et essayé nohup et disown, mais ils ne semblent être au travail. Quand je ferme une fenêtre de terminal, j'obtiens le typique Closing this window will terminate the running processes: watch. message. Que se termine la résiliation de mon processus d'arrière-plan, même lorsque l'utilisation de nohup ou disown. Quel pourrait être le problème?

Mon code est un simple de deux lignes

cmd="nohup watch -n 1 sudo /etc/block.sh > /dev/null"
$cmd & # blocks automatically  

Il est situé dans .bash_profile, parce que je le veux démarrer à chaque fois que j'ouvre un nouveau terminal.

Vous pouvez ignorer le sudo; j'ai déjà trouvé une façon d'exécuter une commande sudo sans entrer le mot de passe.

Je suis à l'aide de Mac OSX.

  • Tangentiellement pertinentes: mywiki.wooledge.org/BashFAQ/050
  • Avoir un nouveau processus de démarrage chaque fois que vous lancez un nouveau shell sonne comme une idée terrible.
  • Je sais que les problèmes de sécurité avec cette. Mais je préfère essayer de le faire fonctionner avant de m'en occuper. À ce point, je ne suis pas sûr si l'exécution d'un processus en arrière-plan fermé le terminal est encore possible.
  • Le message d'avertissement semble venir de l'OSX Terminal d'application; il n'est certainement pas une caractéristique de Bash. Avez-vous vérifié si le processus est toujours en cours d'exécution en dépit de l'avertissement? Si non, savez-vous ce qu'il tue?
  • Le processus (cmd j'ai défini) s'exécute après que le terminal démarre. Lorsque je tente de fermer le terminal, le processus est toujours en cours d'exécution. Seulement après que j'ai fermer la fenêtre de terminal est cmd arrêté. Je vais essayer d'examiner la OSX préférences terminal pour voir si ses responsables.
  • Bon je me suis débarrassé de la mise en garde par le basculement de la OSX préférences terminal, mais le problème existe toujours (cmd encore se fait tuer).
  • Vous voulez dire que vous avez changé la "Demander avant la fermeture de" la préférence? Que juste désactive la boîte de dialogue, évidemment.

InformationsquelleAutor John Robins | 2015-08-27