Interrumpir una salida muy larga en tmux

Interrumpir una salida muy larga en tmux

En una terminal (gnome), si encuentro catun 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 tmuxtarda 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 tmuxventana/panel específico; usarlo lesses 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

  1. 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 %1o 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).

  2. En otra terminal puede preguntar pgrep cat(si catse invocó el comando) e identificar el catproceso que está utilizando suUPCo por pstree:

    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 killque cat 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 lesses 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

información relacionada