ksh Авто-завершение Конфигурация PuTTY

Вопрос или проблема

У меня возникла небольшая проблема с настройкой моего клиента PuTTY для работы с функцией автозавершения в оболочке ksh.

Я делаю листинг корневого каталога с директориями /home и /homeroot, и он возвращает директории в списке без проблем. Однако я не могу выбрать их, нажав X = (где X — это номер).

/home/nitrodist>ls /h        #нажимаю esc + =
1) home/
2) homeroot/
                             #нажимаю 2 + = для директории 'homeroot'
1) home/
2) homeroot/
                             #нажимаю просто клавишу '='.
1) home/
2) homeroot/

Есть идеи? Я su - на другого пользователя, который действительно может это сделать в своей сессии PuTTY, а я не могу, что заставляет меня думать, что это проблема конфигурации PuTTY. Это работает в оболочке ksh93 на HP-UX, если это имеет значение.

Вот моя конфигурация ksh:

/home/campbelm>set -o
Текущие настройки опций
allexport        off
bgnice           on
emacs            off
errexit          off
gmacs            off
ignoreeof        off
interactive      on
keyword          off
markdirs         off
monitor          on
noexec           off
noclobber        off
noglob           off
nolog            off
notify           off
nounset          off
privileged       off
restricted       off
trackall         off
verbose          off
vi               on
viraw            on
xtrace           off
/home/campbelm>

Это никак не связано с PuTTY.

Попробуйте:

Esc =, затем 2 Esc =

или

Tab Tab, затем 2 Tab

Ответ или решение

Проблема с автозаполнением в оболочке ksh при использовании клиента PuTTY может быть вызвана несколькими факторами, включая настройки оболочки и конфигурацию терминала. Давайте разберем возможные решения вашей проблемы.

1. Настройки PuTTY

Прежде всего, убедитесь, что в настройках PuTTY выбраны правильные параметры для работы с ksh:

  • Тип шифрования: Убедитесь, что используется правильный метод шифрования. Откройте настройки PuTTY → Connection → SSH → Encryption, и выберите подходящие алгоритмы.
  • Кодировка символов: Убедитесь, что кодировка терминала установлена на UTF-8. Для этого перейдите в настройки PuTTY → Window → Translation и выберите UTF-8.
  • Свойства окна: Проверьте настройки терминала в PuTTY, чтобы убедиться, что он правильно обрабатывает управляющие последовательности. Это установлено в настройках PuTTY → Window → Behaviour и должно быть включено.

2. Настройки ksh

На основе вашего вывода команды set -o, можно заметить, что некоторые параметры, касающиеся редактирования, могут быть настроены на неактивные значения. Ваша оболочка настроена на использование режима vi, что может влиять на поведение автозаполнения. Вы можете переключиться на режим emacs, что может улучшить поведение автозаполнения:

set -o emacs

3. Проверка функций автозаполнения

Вы упомянули, что автозаполнение работает для другого пользователя. Это говорит о том, что у пользователя, с которым вы тестировали, могут быть дополнительные функции или настройки, включающие поддержку автозаполнения.

Убедитесь, что у вас установлен корректный файл конфигурации для оболочки ksh, такой как .kshrc или .profile, содержащий необходимые функции автозаполнения и настройки. Например, добавьте следующую функцию в ваш .kshrc:

autoload -U compinit
compinit

Это позволит включить более полное автозаполнение для оболочки ksh.

4. Использование комбинаций клавиш

Попробуйте использовать альтернативные комбинации клавиш для выбора нужных элементов:

  • Нажмите Esc, затем = и после этого выберите номер, например, 2, затем снова Esc и =.
  • Или попробуйте использовать Tab для выбора: наберите Tab, чтобы получить список, а затем введите номер и снова Tab для подтверждения.

Заключение

Если следуя указанным шагам и внося изменения в настройки, проблема не разрешится, возможно, потребуется больше информации о конфигурации системы или пользовательских настройках. Попробуйте провести сравнение с настройками работающего пользователя, возможно, существуют отличия в конфигурации окружения, которые требуют коррекции.

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

Оцените материал
Добавить комментарий

Капча загружается...