У меня есть скрипт, который при запуске из PuTTY прокручивает экран. Теперь я хочу вернуться, чтобы увидеть ошибки, но когда я прокручиваю вверх, я вижу прошлые команды, но не вывод команды.
Как я могу увидеть прошлые результаты?
Shift+Pgup/PgDn должен работать для прокрутки без использования полосы прокрутки.
Если вы не перенаправите вывод своих команд в что-то вроде less
, вы сможете использовать полосы прокрутки Putty для просмотра более ранних результатов.
У Putty есть настройки для того, сколько строк прошлых выходных данных она сохраняет в своем буфере.
перед прокруткой
после прокрутки назад (вверх)
Если вы используете что-то вроде less
вывод не попадет в буфер прокрутки Putty
после использования меньше
Я бы порекомендовал использовать screen, если вы хотите иметь хороший контроль над буфером прокрутки на удаленной оболочке.
Вы можете изменить размер буфера прокрутки в соответствии с вашими потребностями, установив:
defscrollback 4000
в ~/.screenrc
, который будет указывать количество строк, которые вы хотите буферизировать (в нашем случае 4000).
Затем вы должны запустить ваш скрипт в сеансе экрана, например, выполнив screen ./myscript.sh
или сначала выполнив screen
а затем ./myscript.sh
внутри сеанса.
Также возможно включить ведение журнала вывода консоли в файл. Вы можете найти больше информации на странице справки экрана.
Из вашего описания кажется, что "проблема" в том, что вы используете screen, tmux или другой зависимый от них оконный менеджер (byobu). Обычно вы должны быть в состоянии прокрутить назад в замазке без проблем. Исключения включают, если вы находитесь в приложении типа less или nano, которое создает свое собственное "окно" на терминале.
С помощью screen и tmux вы можете, как правило, прокручивать назад с помощью SHIFT + PGUP
(так же, как с физического терминала удаленной машины). Оба они также имеют режим "копирования", который освобождает курсор от подсказки и позволяет вам использовать клавиши со стрелками для его перемещения (для выбора текста для копирования с помощью только клавиатуры). Он также позволяет вам прокручивать вверх и вниз с помощью PGUP
и PGDN
. Доступ к режиму копирования под byobu с использованием бэкэндов screen или tmux осуществляется нажатием клавиши F7
(осторожно, F6
отключает сеанс). Чтобы сделать это прямо под экраном, нажмите CTRL + a
затем ESC
или [
. Вы можете использовать ESC
для выхода из режима копирования. В tmux вы нажимаете CTRL + b
затем [
для входа в режим копирования и ]
для выхода.
Самым простым решением, конечно же, не является использование. Я обнаружил, что у обоих гораздо больше проблем, чем они того стоят. Если вы хотите использовать несколько разных терминалов на удаленном компьютере, просто подключитесь к нескольким экземплярам замазки и управляйте окнами, используя ... Окна. Теперь прости меня, но я должен бежать, пока я не сгорел на костре за свою ересь.
РЕДАКТИРОВАТЬ: почти забыл, некоторые ключи могут быть не приняты правильно удаленного терминала, если замазка не была настроена правильно. В конфиге вашей замазки проверьте Terminal -> Keyboard
. Вы, вероятно, хотите, чтобы функциональные клавиши и клавиатура были либо Linux
либо Xterm R6
. Если вы видите странные символы на терминале при попытке выполнить описанное выше, это, скорее всего, проблема.