Je veux exécuter une application en arrière-plan et la tuer plus tard par pid.Popen obtenant pid du processus nouvellement exécuté
pipe = IO.popen("firefox 'some_url' 2>&1 &")
pipe.pid
Ce code démarre firefox et me renvoie un peu de pid, mais malheureusement ce n'est pas le pid de firefox.
pipe = IO.popen("firefox")
pipe.pid
Ce code démarre firefox et renvoie mi un peu de pid, firefox's pid. Y at-il une solution pour démarrer l'application externe et obtenir son pid? Firefox est seulement par exemple cela pourrait être n'importe quelle autre application. J'ai aussi essayé avec des libs comme: Open3 et Open4 mais semble avoir le même effet. Je me demande aussi si '$!' bash variable est une bonne solution pour cela? Exécutez quelque chose en arrière-plan et lisez '$!', Qu'en pensez-vous?
Est-ce le pid de n'importe quel processus de runninng? En général, la commande que vous lancez avec popen peut générer un nombre quelconque d'autres processus, donc si vous voulez un pid spécifique parmi ceux que vous avez besoin de trouver un autre moyen d'identifier le processus que vous recherchez. –