1

Я использую Putty для SSH удаленной виртуальной машины Linux. Все хорошо, за исключением того, что я не могу заставить работать команду терминала Gnome в Putty. Вот некоторые из этих команд:

Ctrl + A или Home Перемещает курсор в начало строки.

Ctrl + E или End Перемещает курсор в конец строки.

Esc + B Переход к началу предыдущего или текущего слова.

Ctrl + K Удаляет от текущей позиции курсора до конца строки.

Ctrl + U Удаляет от начала строки до текущей позиции курсора.

Ctrl + W Удаляет слово перед курсором.

Alt + B Возвращает одно слово за раз.

Alt + F Перемещение вперед на одно слово за раз.

Alt + C Заглавная буква, где находится курсор, и перемещается в конец слова.

Эти ярлыки довольно распространены среди пользователей Linux. К сожалению, они не работают должным образом в Putty. Например, всякий раз, когда я нажимаю CTRL+A в замазке, он печатает ^ A вместо перехода к началу строки.

Сталкивались ли вы с такой же ситуацией или это проблема никогда не решается? И все же, если бы кто-то обнаружил, что в основном это будет несколько шагов, это будет очень цениться.

РЕДАКТИРОВАТЬ: большинство из этих команд на самом деле почти так же, как ярлыки от EMACS.

4 ответа4

2

Сессия ssh в основном туннелирует от вас к удаленному рабочему столу, так что это не ваш настоящий терминал, а нечто вроде подмножества gnome-терминала. Я предлагаю использовать MobaXterm, если вы входите из Windows. Это лучше, чем замазка.

1

Причина проста, вы не используете терминал GNOME. Putty - это та, которая интерпретирует ваши комбинации клавиш, а не терминал GNOME. Я сомневаюсь, что вы даже запускаете процесс gnome-терминала, поскольку сеансы SSH основаны на интерфейсе командной строки, а gnome-терминал представляет собой графический интерфейс пользователя. Чтобы "использовать" терминал gnome, вы должны каким-то образом использовать xserver ( например, с xming ), перенаправить его через SSH своему клиенту и выполнить gnome-терминал, как если бы вы делали это локально.

Другой вариант - настроить Putty так, чтобы он вел себя как терминал gnome, но я не знаю, какие опции доступны на вкладке сочетаний клавиш.

1

Редактирование нажатий клавиш, подобных тем, которые вы перечисляете, обрабатывается программой, которую вы запускаете внутри программы терминала, а не самой программой терминала - putty или gnome-terminal -. Конкретные нажатия клавиш, которые вы перечисляете, являются частью набора команд emacs. Я подозреваю, что вы думаете об использовании bash или tcsh качестве оболочки с редактированием строк в стиле emacs.

Ваша проблема может заключаться в том, что учетная запись, которую вы используете для входа в систему на этом хосте, может не иметь ожидаемой оболочки в качестве оболочки входа в систему, или же оболочка была настроена на отключение режима редактирования emacs. Команда bash для включения режима emacs:

set -o emacs

Команда tcsh :

bindkey -e

Если учетная запись не настроена на использование желаемой оболочки, попробуйте запустить команду chsh чтобы изменить оболочку входа учетной записи:

chsh -s /bin/bash
0

Ваш тип терминала, вероятно, не соответствует. Я использую putty 0.62 с системами Linux(Ubuntu и CentOS). У меня есть терминал типа xterm с обеих сторон, и я могу использовать большинство этих функций (это функции терминала, а не функции программы терминала)

В Putty откройте Connection-> Data, я считаю, что по умолчанию используется xterm.

войдите, затем запустите echo $ TERM. Это тип терминала, который использует ваш сервер.

По моему опыту, системы Linux используют xterm для удаленных сессий.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .