En una terminal (gnome), si encuentro cat
un archivo que resulta ser demasiado largo, siempre puedo presionar Ctrl- cpara interrumpir.
Sin embargo, en , cuando sucede lo mismo, la señal producida por la pulsación de la tecla tmux
tarda mucho en llegar al servidor y, hasta que eso sucede, el servidor está ocupado con esta salida y no puedo hacer nada más que observar la inundación. (o usando una terminal diferente).Ctrlc
Esto es algo similar al problema descrito.aquí.
No deseo reiniciar el terminal, el servidor o incluso la tmux
ventana/panel específico; usarlo less
es un hábito inteligente, pero aquí estoy preguntando sobre cómo resolver problemas que ya ocurrieron, no cómo ser inteligente y evitarlos pensando antes de actuar... ¡siempre habrá sorpresas!
Entonces, ¿hay alguna manera de permitir que el terminal detenga las inundaciones, descarte los datos enviados, etc.? Todo lo que pueda hacer para liberarme de estos molestosminutosde ver personajes en mi pantalla?
Respuesta1
Dos propuestas
Rara vez, en casos como este, CTRL+ z es más eficaz que CTRL+ c: responde más rápido. Después de eso, suspendes el comando con el que puedes eliminarlo
kill %1
o cualquiera que sea el número de trabajo. Con la esperanza de que aún puedas leer cualquier cosa en la pantalla (un texto binario aleatorio inundado puede estropear fácilmente tu conjunto de caracteres).En otra terminal puede preguntar
pgrep cat
(sicat
se invocó el comando) e identificar elcat
proceso que está utilizando suUPCo porpstree
:pgrep cat | awk '{print "pstree -sp "$1}' | sh | grep tmux
responda con una salida como
init(1)---lightdm(1428)---lightdm(2518)---init(2534)---tmux(22425)---bash(22426)---gato(22532)En este caso, después solo tienes
kill
quecat
PID
:
kill 22532
Nota:
- Si presiona CTRL+ Co CTRL+ zy luego minimiza la ventana, probablemente el sistema será más rápido que usted para leer elsolicitud de interrupción. Así que suspender/interrumpir, minimizar, esperar un poco, maximizar nuevamente, también puede ser una solución.
- Como dijiste
less
es más seguro. - Probado nuevamente con tmux 1.8 y funcionando
Respuesta2
Agregue las siguientes líneas a su tmux.conf (~/.tmux.conf)
set -g c0-change-trigger 150 set -g c0-change-interval 100
Más información se puede encontrar enhttp://blog.fraggod.net/2014/09/23/tmux-rate-limiting-magic-against-terminal-spamflood-lock-ups.html