Відповіді:
Завершення вкладки має працювати в PuTTY. Завершення вкладки забезпечується оболонкою, яку ви працюєте на сервері, а не самим PuTTY. Відредагуйте своє запитання та надайте додаткові відомості, зокрема про те, яку оболонку ви використовуєте та що конкретно відбувається, коли ви намагаєтесь скористатися заповненням вкладки.
echo $SHELL
побачити, яку оболонку ти працюєш.
bash
замість sh
? (Я думаю, що Ubuntu /bin/sh
є символьним посиланням на, /bin/bash
але я можу помилитися)
chsh /bin/bash
У мене була цікава версія цього варіанта, коли він працював для root, але не для мого особистого користувача. Це локальний VM, як запропонував krowe, на VirtualBox під керуванням Debian. Я використовував те саме підключення, тож проблема мала бути на стороні сервера.
Як виявилося, різниця полягала в тому, що корінь мав / bin / bash в / etc / passwd, тоді як особистий користувач мав / bin / sh.
Зміна оболонки за замовчуванням на / bin / bash вирішила проблему для мене.
У мене така ж проблема із запуском Putty в Windows, а іноді, натискання Tabпросто відводить фокус від вікна Putty і не робить автозаповнення, як це зазвичай робиться під /bin/bash
. Я спробував усі згадані вище рішення, і жодне з них, здається, не вирішило цю проблему для мене.
Ось як я виправив своє. Перейдіть на екран робочого столу Windows і натисніть Alt- Tabі Ctrl- Tabпоєднання клавіш кілька разів , і це , здається , щоб виправити це для мене. Тепер поверніться на екран Putty і спробуйте Tabще раз.
Введіть таку команду:
sudo vi /etc/bash.bashrc
Шукайте наступні рядки:
# enable bash completion in interactive shells
# if ! shopt -oq posix; then
# if [ -f /usr/share/bash-completion/bash_completion ]; then
# . /usr/share/bash-completion/bash_completion
# elif [ -f /etc/bash_completion ]; then
# . /etc/bash_completion
# fi
# fi
Відмініть декілька рядків, щоб це виглядало так:
# enable bash completion in interactive shells
if ! shopt -oq posix; then
if [ -f /usr/share/bash-completion/bash_completion ]; then
. /usr/share/bash-completion/bash_completion
elif [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
fi
Збережіть, закрийте шпаклівку, а потім знову відкрийте її.
Ваша оболонка може бути за замовчуванням /bin/sh
.
Ви можете виправити це /bin/bash
, скориставшись такими командами:
chsh
/bin/bash
Я знаю, що це старе питання, але я кілька разів зіткнувся з цією проблемою і виявив, що справжнє рішення зовсім не на стороні сервера, а на стороні клієнта, і це перше, що з’являється, коли я шукав вирішення проблеми.
Гаразд, ОП згадує, що він використовує версію VPS Ubuntu. Це змушує мене підозрювати, що він працює у віртуальному сервері, і тому, що він має цю особливу проблему, я б став на облік, що сервер розміщений на локальному рівні. Коли я раніше стикався з цим, це пов'язано з проблемою інструментів VM. Це дратує, тому що вам потрібно буде повністю перезапустити хост-операційну систему, але після цього ви повинні бути хорошими. Ви можете просто спробувати вимкнути VMware або, можливо, просто відключити підключення клавіатури також буде працювати, але мій робочий стіл запускається дуже швидко, тому я зазвичай просто повністю перезавантажуюсь.
У моєму конкретному випадку ця проблема трапляється кожного разу, коли я намагаюся встановити останню версію Kubuntu за допомогою функції швидкої установки VMware (яка також не дає BTW). Це трапляється навіть тоді, коли сервер, до якого я підключаюсь, - це віддалений сервер. Сподіваюся, що це комусь допоможе.