Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 22/02/2017, à 18:17

Crestey

[Résolu] Faire disparaitre la console à la fin d'un script

Bonjour à tous,
J'ai un script dont la dernière commande lance vlc avec la commande suivante /usr/bin/vlc --started-from-file ListeRadioCrestey.xspf
Je souhaite que les commandes s'exécutent avec la console ouverte pour voir défiler les commandes du script (qui prend pas mal de temps), mais ensuite, je souhaite que la console disparaissent quand vlc se lance, c'est à dire juste après la dernière commande.
Est-ce possible ?

Dernière modification par Crestey (Le 23/02/2017, à 12:20)


Merci à tous.
Sous Ubuntu/XFCE depuis 2013. Ça fonctionne vraiment très bien.

Hors ligne

#2 Le 22/02/2017, à 19:47

denis56

Re : [Résolu] Faire disparaitre la console à la fin d'un script

Salut,

Heu ! Si tu fermes ta console qui lance vlc, celui-ci s'arrête, testes !  c'est un processus fils de ta console. donc il faudrait déjà adapter la commande de lancement pour anticiper...
Mais j'suis pas assez calé pour t'aider davantage sad


Debian Jessie souvent, Xubuntu parfois,
Bénévole @ Rhizomes

Hors ligne

#3 Le 22/02/2017, à 19:56

Hizoka

Re : [Résolu] Faire disparaitre la console à la fin d'un script

Salut,

si ta dernière commande est :

/usr/bin/vlc --started-from-file ListeRadioCrestey.xspf

ajoute simplement un & pour la lancer en arrière plan

/usr/bin/vlc --started-from-file ListeRadioCrestey.xspf &

Dernière modification par Hizoka (Le 22/02/2017, à 19:57)


KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github

Hors ligne

#4 Le 22/02/2017, à 22:22

Crestey

Re : [Résolu] Faire disparaitre la console à la fin d'un script

Merci à vous pour vos réponses,
Hizoka, le "&" à la fin, ça ne fait aucune différence.


Merci à tous.
Sous Ubuntu/XFCE depuis 2013. Ça fonctionne vraiment très bien.

Hors ligne

#5 Le 22/02/2017, à 23:15

DonutMan75

Re : [Résolu] Faire disparaitre la console à la fin d'un script

Bonsoir,
je tenterai pour ma part un :

$ /usr/bin/vlc --started-from-file ListeRadioCrestey.xspf & exit

Je crois que cette commande lance un fils (ici vlc) puis se termine. Dans ce cas tous les processus fils ouverts deviennent les fils adoptifs du processus Init...
Si vous pouviez me confirmer ça, ce sont des souvenirs et il est un peu tard ^^

En revanche, pourquoi quand on exécute :

$ /usr/bin/vlc --started-from-file ListeRadioCrestey.xspf &

puis qu'on ferme le shell, alors tout se ferme.... Là j'aimerais biens savoir ^^

Bonne soirée,

Donut.

Dernière modification par DonutMan75 (Le 22/02/2017, à 23:16)

Hors ligne

#6 Le 23/02/2017, à 00:52

MicP

Re : [Résolu] Faire disparaitre la console à la fin d'un script

En utilisant xdotool, on peut réduire la fenêtre qui affiche les messages du script à l'état d'icône dans la barre des tâches.
Il suffirait que, dans le script, cette ligne de commande soit exécutée juste avant que la commande vlc soit lancée

…
xdotool getactivewindow windowminimize
/usr/bin/vlc --started-from-file ListeRadioCrestey.xspf

Dernière modification par MicP (Le 23/02/2017, à 00:53)

Hors ligne

#7 Le 23/02/2017, à 01:53

maxire

Re : [Résolu] Faire disparaitre la console à la fin d'un script

Salut

/usr/bin/vlc --started-from-file ListeRadioCrestey.xspf &
# Détermination pid session console
PID_CONSOLE="`ps --pid $$ -o ppid`"
PID_CONSOLE=${PID_CONSOLE#*PPID}
# Arrêt processus console
kill -9 $PID_CONSOLE

Cela devrait le faire.

Bizarrement kill -15 ne passe pas je passe  en force avec -9.


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#8 Le 23/02/2017, à 06:22

Crestey

Re : [Résolu] Faire disparaitre la console à la fin d'un script

$ /usr/bin/vlc --started-from-file ListeRadioCrestey.xspf & exit

ça ferme console et vlc

$ /usr/bin/vlc --started-from-file ListeRadioCrestey.xspf &

Pareil

/usr/bin/vlc --started-from-file ListeRadioCrestey.xspf &
# Détermination pid session console
PID_CONSOLE="`ps --pid $$ -o ppid`"
PID_CONSOLE=${PID_CONSOLE#*PPID}
# Arrêt processus console
kill -9 $PID_CONSOLE

Pareil avec le message en prime Impossible de lancer l'émulateur de terminal par défaut.
Ce petit problème est plus chiant que je pensais hmm


Merci à tous.
Sous Ubuntu/XFCE depuis 2013. Ça fonctionne vraiment très bien.

Hors ligne

#9 Le 23/02/2017, à 08:50

pingouinux

Re : [Résolu] Faire disparaitre la console à la fin d'un script

Bonjour,
À tout hasard, essaye ceci :

nohup /usr/bin/vlc --started-from-file ListeRadioCrestey.xspf & exit

Hors ligne

#10 Le 23/02/2017, à 09:34

MicP

Re : [Résolu] Faire disparaitre la console à la fin d'un script

dans son message #1, Crestey a écrit :

J'ai un script dont la dernière commande…

mais comment est lancé ce script ?
N'y aurait-il pas la possibilité d'enlever la commande vlc du script,
et de lancer séparément la commande vlc juste après l'exécution du script ?

Hors ligne

#11 Le 23/02/2017, à 10:09

Crestey

Re : [Résolu] Faire disparaitre la console à la fin d'un script

pingouinux ça ne marche pas non plus, la console ne se ferme pas.
MicP, le script est lancé indifféremment en ligne de commande ou avec un lanceur qui lance le script. Mais en final ce ne sera que le lanceur.


Merci à tous.
Sous Ubuntu/XFCE depuis 2013. Ça fonctionne vraiment très bien.

Hors ligne

#12 Le 23/02/2017, à 10:14

maxire

Re : [Résolu] Faire disparaitre la console à la fin d'un script

Comment est lancé le script? +1
J'oubliais de préciser lancer le script lui-même en ajoutant & en fin de commande.
Si ton script s'appelle toto tu le lances en console:

toto &

Et cela marche.

Du moins avec ce script test:

#!/bin/bash
vlc --quiet &
# Détermination pid session console
PID_CONSOLE="`ps --pid $$ -o ppid`"
PID_CONSOLE=${PID_CONSOLE#*PPID}
echo $PID_CONSOLE
# Arrêt processus console
kill -9 $PID_CONSOLE

Dernière modification par maxire (Le 23/02/2017, à 10:20)


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#13 Le 23/02/2017, à 12:19

Crestey

Re : [Résolu] Faire disparaitre la console à la fin d'un script

Ah oui, là ça marche. Nickel ! smile
Il me suffit maintenant de rajouter ce "&" à la fin de la commande écrite dans mon lanceur.
Merci Maxire !


Merci à tous.
Sous Ubuntu/XFCE depuis 2013. Ça fonctionne vraiment très bien.

Hors ligne

#14 Le 23/02/2017, à 13:19

maxire

Re : [Résolu] Faire disparaitre la console à la fin d'un script

Je me disais bien que mon truc était tordu car il est inspiré d'un script écrit pour stopper un processus parent qui n'est pas le processus lanceur mais un processus beaucoup plus en amont,
Il est beaucoup plus simple de faire:

/usr/bin/vlc --started-from-file ListeRadioCrestey.xspf &
# Arrêt processus console
kill -9 $PPID

PPID est la variable d'environnement donnant le numéro processus du parent immédiat du shell en cours d'exécution.

Par contre avec un lanceur je ne suis pas certain que mes bricolages fonctionnent.

Dernière modification par maxire (Le 23/02/2017, à 13:19)


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne