J'essaie de tuer une session d'écran. J'ai remarqué beaucoup d'autres questions connexes, mais aucune de ces réponses ne fonctionne pour moi. J'essaie de tuer la session suivante:
screen -ls
There is a screen on:
23520.pts-6.porkypig (09/30/2013 02:49:47 PM) (Detached)
1 Socket in /var/run/screen/S-root.
screen -r 23520.pts-6.porkypig
Maintenant je suis en session. Selon la documentation:
http://www.gnu.org/software/screen/manual/screen.html#Quit
Je suis censé appuyer sur "control a" puis sur "control \". Je fais ça et rien ne se passe.
Une autre solution a dit d'appuyer sur Ctrl+ aet tapez: quitter. Cependant, encore une fois, cela ne fait rien. En fait, en appuyant sur control+ a, il ne se passe absolument rien par la suite, sauf le message "Aucune autre fenêtre"
gnu-screen
JohnMerlino
la source
la source
ps aux | grep "SCREEN" | awk '{print $2}' | xargs kill
screen -r porkypig
ouscreen -r 23520
plutôt que d’avoir à inclure la chaîne complète. Les noms d'écran sont supposés faciliter les choses, pas plus compliqués.Réponses:
vous devez d’abord vous reconnecter à la session d’écran
screen -r 23520
comme vous l’avez fait. Puis appuyez sur ctrl+ apuis sur une majuscule Ket appuyez sur yquand il vous demande si vous voulez vraiment tuer la sessionla source
Vous pouvez quitter cet écran sans vous y attacher. Tout d'abord, trouvez sa session:
et puis le quitter:
(-X = commande Execute, PID de session -S à exécuter)
[MISE À JOUR]
Exemple:
la source
Cela va tuer tous les écrans détachés:
Cela va tuer tous les écrans, attachés ou détachés
la source
Donc, avec toutes ces suggestions officielles, passons à quelque chose de plus simple, tout aussi efficace et de plus en plus simple.
pkill screen
Qui veut accéder à un écran inconnu et inutile pour appuyer quelques commandes dont la plupart pourraient à peine se souvenir? Cela évite d'y entrer et le tue immédiatement.
De plus, si vous en avez plus d'un, cela les prendra tous d'un coup.
la source
J'ai rencontré ce problème lors de la mise à jour de l'écran. La
screen
commande se bloquerait lorsque vous tenteriez de rattacher la session, quel que soit le nombre-D
ou le nombre-R
ajouté à la commande. Cependant,screen -ls
fournit commodément le pid de la session, vous permettant d’intervenir en utilisant les éléments suivants:(Ceci est similaire à la réponse de Brian Thomas, mais sa volonté va tuer toutes les sessions d'écran en cours, ce qui peut ne pas être ce que vous voulez si vous avez plusieurs écrans ouverts mais un seul se comporte mal.)
la source
Comme vous, je voulais tuer ma session d’écran et j’ai trouvé la documentation inutile. Convaincu qu'il doit être un raccourci clavier, je trouve que
ctrl + a
puis\
œuvres
Je reçois alors l’invite: "Arrête vraiment et tue toutes tes fenêtres [y \ n]"
Je ne sais pas pourquoi la documentation dit
ctrl + a
alorsctrl + \
. Cela ne fait rien pour moi.la source
Vous pouvez trouver l'ID de processus de l'écran en cours joint. Je l'ai trouvé identique à l'identifiant de session que vous pouvez obtenir par commande:
screen -ls
Et vous pouvez utiliser la commande suivante pour tuer ce processus:
kill [sessionId]
ousudo kill [sessionId]
Vous pouvez tuer l'écran même s'il est attaché sur une autre fenêtre de terminal.
la source
Appuyez sur ctrl + d pour tuer la fenêtre d’écran. Répétez cette opération jusqu'à ce que toutes les fenêtres d'écran soient supprimées. Une fois que vous avez épuisé toutes les fenêtres, l'écran tue la session et se termine. La solution la plus courte si vous n'avez pas beaucoup de fenêtres
la source