Arrêter une appli lancée depuis un terminal (en arrière plan)
Résolu/Fermé
Paullux_1er
Messages postés
122
Date d'inscription
vendredi 10 février 2017
Statut
Membre
Dernière intervention
28 janvier 2020
-
Modifié le 2 avril 2017 à 08:14
Flachy Joe Messages postés 2103 Date d'inscription jeudi 16 septembre 2004 Statut Membre Dernière intervention 21 novembre 2023 - 4 avril 2017 à 22:48
Flachy Joe Messages postés 2103 Date d'inscription jeudi 16 septembre 2004 Statut Membre Dernière intervention 21 novembre 2023 - 4 avril 2017 à 22:48
A voir également:
- Arrêter une appli lancée depuis un terminal (en arrière plan)
- Arrière plan - Guide
- Commande terminal mac - Guide
- Youtube en arrière plan - Guide
- Flouter arrière-plan appel vidéo whatsapp android - Guide
- Arriere plan pc - Guide
2 réponses
Flachy Joe
Messages postés
2103
Date d'inscription
jeudi 16 septembre 2004
Statut
Membre
Dernière intervention
21 novembre 2023
260
Modifié le 4 avril 2017 à 13:07
Modifié le 4 avril 2017 à 13:07
Salut,
tu peux utiliser xinput pour faire un "keylogger" qui détecte tous les appuie de touche cf https://blog.rom1v.com/2011/11/keylogger-sous-gnulinux-enregistrer-les-touches-tapees-au-clavier/
exemple :
EDIT ; version améliorée qui rend la main quand le programme est tué d'une autre manière :
NB : ça détecte la touche ESC quelque soit la fenêtre en avant plan, le terminal, le programme lancé ou n'importe quelle autre.
;-) Flachy Joe ;-)
"Qui ne se plante jamais n'a aucune chance de pousser !" Graf anonyme
tu peux utiliser xinput pour faire un "keylogger" qui détecte tous les appuie de touche cf https://blog.rom1v.com/2011/11/keylogger-sous-gnulinux-enregistrer-les-touches-tapees-au-clavier/
exemple :
#!/bin/bash id_clavier=8 #à trouver avec xinput list touche=9 #touche ESC xterm & pid_xterm=$! xinput test $id_clavier | grep $touche -m 1 >/dev/null kill $pid_xterm
EDIT ; version améliorée qui rend la main quand le programme est tué d'une autre manière :
#!/bin/bash id_clavier=8 #à trouver avec xinput list touche=9 #touche ESC xterm & pid_xterm=$! (xinput test $id_clavier | grep $touche -m 1 >/dev/null; kill $pid_xterm) & pid_xin=$! while kill -0 $pid_xterm >/dev/null 2>&1 do sleep 0.2 done; kill $pid_xin 2>/dev/null
NB : ça détecte la touche ESC quelque soit la fenêtre en avant plan, le terminal, le programme lancé ou n'importe quelle autre.
;-) Flachy Joe ;-)
"Qui ne se plante jamais n'a aucune chance de pousser !" Graf anonyme
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 417
3 avril 2017 à 09:34
3 avril 2017 à 09:34
Salut,
La variable "${!}" contient le PID de la dernière commande lancée en arrière-plan.
Il te suffit de la récupérer après avoir lancé ta commande.
La variable "${!}" contient le PID de la dernière commande lancée en arrière-plan.
Il te suffit de la récupérer après avoir lancé ta commande.
Paullux_1er
Messages postés
122
Date d'inscription
vendredi 10 février 2017
Statut
Membre
Dernière intervention
28 janvier 2020
1
3 avril 2017 à 10:29
3 avril 2017 à 10:29
Oui, mais ce qui se passe c'est le terminal qui passe en arrière plan et comme le focus est sur Chrome, le terminal ne détecte plus le clavier, j'ai essayé d'utiliser xbindkeys sans réel succès ou d'utiliser parallel sans plus de succès.
comment faire que le clavier agissent sur le terminal et sur Chrome, voilà ma question ?
comment faire que le clavier agissent sur le terminal et sur Chrome, voilà ma question ?
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 417
>
Paullux_1er
Messages postés
122
Date d'inscription
vendredi 10 février 2017
Statut
Membre
Dernière intervention
28 janvier 2020
3 avril 2017 à 10:49
3 avril 2017 à 10:49
Et avec Alt+Tab tu ne peux pas ramener le terminal au 1er plan ?
Paullux_1er
Messages postés
122
Date d'inscription
vendredi 10 février 2017
Statut
Membre
Dernière intervention
28 janvier 2020
1
3 avril 2017 à 10:51
3 avril 2017 à 10:51
oui mais, j'aimerais que cela soit transparent, mon but c'est de lancer Chrome depuis kodi (pas du terminal).
--
--
Paullux_1er
Messages postés
122
Date d'inscription
vendredi 10 février 2017
Statut
Membre
Dernière intervention
28 janvier 2020
1
3 avril 2017 à 11:35
3 avril 2017 à 11:35
ce qu'il me faut c'est :
détecter appui sur echap -> variable dans fichier -> read variable dans le fichier
--
détecter appui sur echap -> variable dans fichier -> read variable dans le fichier
--
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 417
>
Paullux_1er
Messages postés
122
Date d'inscription
vendredi 10 février 2017
Statut
Membre
Dernière intervention
28 janvier 2020
4 avril 2017 à 09:09
4 avril 2017 à 09:09
Essaie de regarder du côté de la commande
trapet voir si tu peux l'adapter à ton cas…
Modifié le 4 avril 2017 à 13:14
Aujourd'hui, le code est :
#!/bin/bash
id_clavier=8 #à trouver avec xinput list
touche=9 #touche ESC
selection=$(zenity --question --ok-label="Écran 2" --cancel-label="Écran 1" --text="Choix Écran" --title="Où doit être afficher YouTube")
sortie=$?
case $sortie in
0) screen='1920,0';;
esac
echo $screen
/opt/google/chrome/google-chrome --user-data-dir="monitor2" --window-position=$screen --start-fullscreen --profile-directory="standard" --app="https://www.youtube.com/tv#/" &
pid_ChrYTTV=$!
xinput test $id_clavier | grep $touche -m 1 >/dev/null
kill $pid_ChrYTTV
exit 0
Modifié le 4 avril 2017 à 13:39
L'appui sur Echap n'est plus détecté.
Comme si "Advanced Launcher" coupait le script.
4 avril 2017 à 21:27
Et lorsque je lance le script depuis Kodi, xinput est bien lancé mais le script ne coupe pas et reste charger dans le système (le script et xinput) ; sans interrompre chrome, comme si xinput serait inhiber, Echap est utilisé par Kodi, ça doit être ça. Il faudrait couper Kodi à l'entrée et le restaurer à la sortir du script.
Sinon si je lance le script depuis le fichier *.desktop ou directement, la touche F11 coupe Chrome, xinput et le script (en plus de Echap).
4 avril 2017 à 22:48
Avec la "version améliorée" de l'astuce, le script devrait se terminer correctement.
xinput espionne l’événement clavier mais le laisse passer donc la touche ESC restera interprétée par la fenêtre en avant-plan.