#1 Le 22/01/2015, à 11:16
- totola
(+ ou - Résolu) arrêter un seul processus vlc en ligne de commande
Bonjour,
dans un programme, je lance plusieurs processus vlc (cvlc en fait) en même temps. Je voudrais savoir si c'est possible d'en arrêter un seul et que les autres fonctionnent encore... évidemment killall cvlc me tue tout d'un coup...
Merci
Dernière modification par totola (Le 30/01/2015, à 20:06)
Hors ligne
#2 Le 22/01/2015, à 11:38
- genma
Re : (+ ou - Résolu) arrêter un seul processus vlc en ligne de commande
Si tu fais la commande ps aux, tu auras les différents processus. Il te faut savoir le PID du VLC que tu veux killer. Et kill -9 WXYZ ou WXYZ est l'id du processus turera le VLC correspondant (mais pas les autres). Regarde ici http://doc.ubuntu-fr.org/tutoriel/conso … illkillall
"Lorsque tu as découvert le libre, tu sais que tu ne pourras plus jamais revenir en arrière".
Utilisateur d'Ubuntu depuis la version 4.10 !
Mon blog ? https://blog.genma.fr
Mon twitter? http://twitter.com/genma
Hors ligne
#3 Le 22/01/2015, à 11:44
- totola
Re : (+ ou - Résolu) arrêter un seul processus vlc en ligne de commande
Merci de la réponse, en effet c'est une bonne piste!
Mais est-ce possible d'attribuer un PID à la création du processus, de cette manière je saurais lequel tuer??
En gros mon programme contient plusieurs fois un groupe de deux boutons: un pour lancer le processus et un autre pour le tuer et il faut que le bouton pour tuer le processus corresponde avec celui qui l'a lancé...
Hors ligne
#4 Le 22/01/2015, à 11:58
- credenhill
Re : (+ ou - Résolu) arrêter un seul processus vlc en ligne de commande
hello
tu ne peux pas attribuer un PID, mais tu peux le récupérer en lançant une tâche en arrière plan
vlc & PID=$!
Hors ligne
#5 Le 22/01/2015, à 12:26
- totola
Re : (+ ou - Résolu) arrêter un seul processus vlc en ligne de commande
Ok mais je m'emmêle un peu les pinceaux avec les commandes shell... Il faut stocker le pid dans un fichier? Comment le rappeler ensuite?
Merci
Hors ligne
#6 Le 22/01/2015, à 12:57
- genma
Re : (+ ou - Résolu) arrêter un seul processus vlc en ligne de commande
Il faut stocker le pid dans un fichier? Comment le rappeler ensuite?
Il faut stocker le pid dans une variable.
Un truc du genre
#lancer VLC et récupérer le pid dans une variable
monPID = $(vlc & PID=$!)
# Afficher le PID (valeur dans la variable)
echo $monPID
A adapter à ton besoin.
Ton programme, il est en quoi?
"Lorsque tu as découvert le libre, tu sais que tu ne pourras plus jamais revenir en arrière".
Utilisateur d'Ubuntu depuis la version 4.10 !
Mon blog ? https://blog.genma.fr
Mon twitter? http://twitter.com/genma
Hors ligne
#7 Le 22/01/2015, à 13:36
- totola
Re : (+ ou - Résolu) arrêter un seul processus vlc en ligne de commande
Merci!
Il est en python mon programme...
Hors ligne
#8 Le 22/01/2015, à 14:15
- genma
Re : (+ ou - Résolu) arrêter un seul processus vlc en ligne de commande
Si tu comprends l'anglais et le code python, tu as ça https://stackoverflow.com/questions/376 … -in-python
"Lorsque tu as découvert le libre, tu sais que tu ne pourras plus jamais revenir en arrière".
Utilisateur d'Ubuntu depuis la version 4.10 !
Mon blog ? https://blog.genma.fr
Mon twitter? http://twitter.com/genma
Hors ligne
#9 Le 22/01/2015, à 16:19
- totola
Re : (+ ou - Résolu) arrêter un seul processus vlc en ligne de commande
Ok merci!
Avec tout ça je devrais à me débrouiller!
Pour l'instant je coince avec un truc plus gênant: les threads... J'aimerais pouvoir lancer plusieurs processus en même temps, et ça n'a pas l'air si simple...
http://forum.ubuntu-fr.org/viewtopic.php?id=1770441
En attendant ce fil est résolu, merci!
Hors ligne
#10 Le 22/01/2015, à 17:38
- genma
Re : (+ ou - Résolu) arrêter un seul processus vlc en ligne de commande
Si le poste est résolu, peut tu en changer le titre s'il te plait. Merci à toi.
Et de rien pour les réponses.
"Lorsque tu as découvert le libre, tu sais que tu ne pourras plus jamais revenir en arrière".
Utilisateur d'Ubuntu depuis la version 4.10 !
Mon blog ? https://blog.genma.fr
Mon twitter? http://twitter.com/genma
Hors ligne
#11 Le 22/01/2015, à 19:37
- totola
Re : (+ ou - Résolu) arrêter un seul processus vlc en ligne de commande
Voili voilou...
@+
Hors ligne
#12 Le 29/01/2015, à 21:07
- totola
Re : (+ ou - Résolu) arrêter un seul processus vlc en ligne de commande
#lancer VLC et récupérer le pid dans une variable monPID = $(vlc & PID=$!) # Afficher le PID (valeur dans la variable) echo $monPID
J'ai dit résolu un peu vite peut-être... En suivant les instructions ci-dessus la variable monPID ne contient rien du tout...
Hors ligne
#13 Le 30/01/2015, à 10:47
- credenhill
Re : (+ ou - Résolu) arrêter un seul processus vlc en ligne de commande
essayer
vlc & PID=$! ; echo $PID
Dernière modification par credenhill (Le 30/01/2015, à 13:30)
Hors ligne
#14 Le 30/01/2015, à 20:03
- totola
Re : (+ ou - Résolu) arrêter un seul processus vlc en ligne de commande
Merci, en fait le problème venait d'autre part: j'utilise ma commande dans un programme python avec le module fabric (pour utiliser ssh) et la commande run()... Et c'est pas si simple comme le dit la doc elle-même:
http://www.fabfile.org/faq.html#why-can … abric-hang
Ce qui est bizarre et si quelqu'un peut m'expliquer, c'est que la commande:
run('cvlc & PID=$!')
ou
run('cvlc & PID=$! &')
ne marchent pas... cvlc ne se lance même pas
en revanche:
run('cvlc & PID=$! | while (true) do sleep 100;done')
ou n'importe quel processus ou boucle infinie, et là tout fonctionne bien, cvlc se lance, je peux le tuer avec le PID... Bizarre... :s
Dernière modification par totola (Le 30/01/2015, à 20:04)
Hors ligne