Linux: commande pour arrêter un programme

Forum dédié aux problématiques concernant les scripts pour DomoticZ.
Entourez votre code et les logs avec les balises nommées code grâce au bouton <\>.
Phebus06
Messages : 213
Inscription : 26 janv. 2017, 09:25

Linux: commande pour arrêter un programme

Message par Phebus06 »

Bonjour,

Alors c'est tout con mais je ne sais pas faire.
Quelle est la commande linux pour arrêter un programme proprement sans utiliser kill ou killall ???

Car je fais un petit script Lua pour lancer Kodi et l'arrêter quand je veux avec Domoticz. (ci-dessous)

Code : Tout sélectionner

commandArray = {}

   if (devicechanged['Kodi On/Off'] == 'On') then
   os.execute("su - pi -c 'export DISPLAY=:0; kodi &' ")
   end
   
   if (devicechanged['Kodi On/Off'] == 'Off') then
   os.execute("su - pi -c 'export DISPLAY=:0; je ne sais pas quoi mettre lol...
   end
      
return commandArray
j'ai essayé stop kodi mais ça ne l'arrête pas complètement...
georges.attali
Messages : 58
Inscription : 19 févr. 2016, 21:35

Re: Linux: commande pour arrêter un programme

Message par georges.attali »

Hello,
à mon avis, c'est bien kill ou killall qu'il faut utiliser.
si kodi a prévu un signal pour l'arréter "proprement", il faudra utiliser kill ou killall pour envoyer ce signal.
si kodi n'a pas prévu de signal pour l'arréter "proprement", il faut aussi utiliser kill ou killall.
donc ... je vois guère d'autre solution. Peux être un deuxième avis ?
Bye, GD
Phebus06
Messages : 213
Inscription : 26 janv. 2017, 09:25

Re: Linux: commande pour arrêter un programme

Message par Phebus06 »

Ok merci, c'est noté.
En fait j'avais peur quand faisant killall à force il apparaisse des erreurs lol
domcars0
Messages : 238
Inscription : 18 févr. 2017, 20:23

Re: Linux: commande pour arrêter un programme

Message par domcars0 »

La commande killall envoie (par défaut) un signal au programme lui indiquant de se terminer (équivalent à kill -SIGTERM).
Seul un killall -s KILL (ou un kill -KILL) tue "violement" un processus.
Pour plus d'infos (please RTFM ;) ):
% man killall
La liberté a un prix... celui de l'effort.
rimram31
Messages : 659
Inscription : 04 oct. 2015, 11:22
Localisation : Toulouse

Re: Linux: commande pour arrêter un programme

Message par rimram31 »

Phebus06 a écrit :...Car je fais un petit script Lua pour lancer Kodi et l'arrêter quand je veux avec Domoticz....
Sauf que kodi n'est pas tout a fait un programme "comme les autres" puisqu'il utilise de façon particulière pas mal de ressources notamment l'écran. Kodi n'a d'ailleurs pas été trop conçu pour être arrêté/redémarré régulièrement mais plus comme un mediacenter toujours "up".

A vérifier mais je pense que le meilleur moyen d'arrêter kodi est d'utiliser le start/shutdown de kodi, a priori un

Code : Tout sélectionner

systemctl start/stop kodi
derait fonctionner non ?
Raspberry Pi 2 + carte RF pi "maison" + Domoticz
Sonde Oregon + Aliexpress - Prises Chacon (3500W) - 1wire DS18B20
Phebus06
Messages : 213
Inscription : 26 janv. 2017, 09:25

Re: Linux: commande pour arrêter un programme

Message par Phebus06 »

désolé j'étais super occupé ces temps ci et du coup j'avais laissé tombé mon développement domotique ;)

Merci pour l'info, j'essaierai ce week end :D
Répondre