Если я запускаю команду с большим количеством выходных данных в tmux, но решаю отменить ее с помощью Ctrl-C, задержка составляет 10-15 секунд, прежде чем она останавливается. Однако, если я делаю то же самое за пределами tmux, это немедленно останавливается. Почему это и можно ли это исправить?
На практике эта проблема возникает, когда я работаю grep -R
с большим каталогом, и мой поиск недостаточно ограничен. Обходной путь может состоять в том, чтобы wc
сначала перенаправить результат, чтобы убедиться, что вывод не слишком длинный, но это просто еще один шаг, который я хотел бы избежать.
Заметки:
- Это имеет то же поведение в терминале Gnome, uxterm, st и обычном виртуальном терминале (например, ctrl-alt-f2), но задержка меньше в обычном виртуальном терминале.
- Я не единственный: http://www.mail-archive.com/tmux-users@lists.sourceforge.net/msg01569.html
- Задержка будет больше, если окно моего терминала будет больше. Для полноэкранного терминала требуется около 15 секунд для остановки
grep -R
(без других аргументов) в загроможденном домашнем каталоге. Для терминала размером 80 × 25 он останавливается практически сразу.
grep -R "a" ~/
(не записывать в файл) ... аyes | nl | cut -f1 | head -9999999 > ~/file
потомcat ~/file
.