проблема
Я выполняю команду, которая выводит много информации через SSH. Например, я безрассудно добавляю отладочную информацию в цикл, который выполняется миллион раз, или просто запускаю cat /dev/urandom
для ударов.
Терминал залит информацией.
Я хочу завершить команду как можно скорее и исправить мою программу. Мне все равно, что это печатает. Дело в том, что я нажимаю Ctrl+ CКАК МОЖНО СКОРЕЕ (в приведенном выше примере я нажал ее сразу после запуска команды), но все равно требуется время для печати всей информации, которая мне даже не нужна .
Что я пробовал
Я пытался нажать Ctrl+ Cтак сильно, что получился забавный результат, когда терминал наконец догнал:
OUTPUT HERE^C
rr-@burza:~/xor$ ^C
rr-@burza:~/xor$ ^C
rr-@burza:~/xor$ ^C
^C^C
^C^C^C^C^C^C^C^C^C^C^C
^C^C^C^C^C^C^C^C^C^C
^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C
^C^C^C^C^C^C^C
^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C
^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C
^C^C^C^C^C^C^C^C^C^C^C^C^C
rr-@burza:~/xor$ ^C
rr-@burza:~/xor$ ^C
rr-@burza:~/xor$ ^C
rr-@burza:~/xor$ ^C
rr-@burza:~/xor$ ^C
rr-@burza:~/xor$ ^C
rr-@burza:~/xor$ ^C
rr-@burza:~/xor$ ^C
rr-@burza:~/xor$ ^C
Я также читал о Ctrl+, Sкоторый, по-видимому , используется, чтобы сказать терминалу «остановить вывод, мне нужно наверстать упущенное», но, видимо, это ничего не делает.
Разные детали
Я не хотел бы изменять команду, которую я запускаю, чтобы я мог спасти себя в любой ситуации, даже если я не помню, чтобы программа, которую я запускаю, могла закончиться таким образом.
Мой SSH-клиент работает в Cygwin ( CYGWIN_NT-6.1-WOW64 luna 1.7.30(0.272/5/3) 2014-05-23 10:36 i686 Cygwin
) в MinTTY с установленным типом терминала xterm-256color
.
SSH сервер работает на Debian ( Linux burza 3.2.0-4-686-pae #1 SMP Debian 3.2.51-1 i686 i686 i686 GNU/Linux
).
-j
опцией, чтобы включить прокрутку прыжка. Основная проблема заключается в том, что пульт дистанционного управления может отправлять данные быстрее, чем окно терминала может их отобразить - по умолчанию он должен отправлять битовое содержимое содержимого окна каждый раз при печати новой строки. К тому времени, когда ваш Ctrl-C получит удаленную систему, буферизуется много данных, и ваша терминальная программа попытается отобразить все это.
.bashrc
?
Ctrl-O
, что означает «отбросить любой вывод, записанный в этот терминал».