Pages : 1
#1 Le 12/11/2011, à 21:03
- UUBBUU_USER
Script_Python_ON_OFF_RESTART
Salut Tous le monde !!
Je vous présente un petit script sans prétention, basé à la base sur le script sh "conkywonky" de la distrib. "Crunchbang", que j'avais modifié pour fonctionner avec n'importe qu'elle app. sous X.
Voilà donc une version similaire en python.
#!/usr/bin/python
# -*- coding: utf-8 -*-
import subprocess, sys, re, os
from signal import SIGKILL
from os import kill, system
from string import join
debugBool = False
def debug(msg):
if debugBool:
print('%s' % msg)
def start(cmd):
system('%s &' % cmd)
debug('lancement: %s' % cmd)
def stop(softPid):
kill( int(softPid), SIGKILL)
debug('arrêt: %s' % softPid)
soft = sys.argv[2]
debug('nom du soft: %s' % soft)
softCmd = ' '.join(sys.argv[2:])
debug('commande: %s' % softCmd)
pidList = [subprocess.Popen(['pidof', '%s' % soft], stdout=subprocess.PIPE).communicate()[0]]
debug('liste process: %s' % pidList)
if pidList:
for pid in pidList:
pidList = re.compile('[\s]+').split(pid)
debug('liste process nu: %s' % pidList)
arg = sys.argv[1]
debug('argument de lancement: %s' % arg)
if arg == '-o':
if pidList == ['']:
start(softCmd)
else:
for pid in pidList:
if pid:
stop(pid)
if arg == '-r':
for pid in pidList:
if pid:
stop(pid)
start(softCmd)
Syntaxe pour lancer le script ( dans le menu d'openbox par exemple ), pour relancer, arrêter, ou lancer un programme tel que conky, ou autre:
<path + nom du script> [ -o | -r ] + commande
Tout avis, critique, ou correction sont les bienvenus
PEACE LOVE UNITY FREE TIBET
Hors ligne