Я не так в Linux, и у меня есть следующие сомнения: клиент предоставил мне виртуальную машину LTS Ubuntu 18.04.3, к которой я получаю доступ через SSH. (Я использую MobaxTerm в качестве клиента SSH, но это не должна быть проблема.) Используемая оболочка sh
.
Проблема состоит в том, что в оболочке функция автоматического заполнения не работает, поскольку я ожидал использовать клавишу Tab.
Это просто поместило классические пробелы вкладки.
Почему? Как я могу изменить эту конфигурацию?
sh
обеспечивают dash
в Ubuntu. Много оболочек, включая bash
и zsh
, имейте сложные функции легкого интерактивного использования. dash
сознательно довольно минимально и не предлагает такие функции. В частности, это не предлагает заполнение клавишей Tab.
Даже упрощенные системы Ubuntu обычно имеют bash
установленный, потому что это считают существенным пакетом - мы, как предполагается, можем предположить, что это присутствует даже вне случая, где другой пакет зависит от него. Обычно bash
пользовательская оболочка по умолчанию на Ubuntu - то есть, оболочка входа в систему, которую новые пользователи получают по умолчанию - хотя это может быть реконфигурировано.
Я рекомендую использовать bash
или другая оболочка, которая хороша использовать в интерактивном режиме. Вы видите если bash
доступно в этом VM путем выполнения:
bash
Принятие Ваш $PATH
установлен обоснованно, который будет работать bash
если это доступно. Можно удостовериться то заполнение клавишей Tab работы в bash
- это должно, но нет никакой причины не проверить - и затем получить заполнение клавишей Tab в будущем посредством одного из двух подходов:
bash
когда Вы хотите заполнение клавишей Tab и другой bash
функции.bash
с chsh
команда.Обратите внимание, что существует отдельный названный пакет bash-completion
который также обычно устанавливается. Это обеспечивает программируемое заполнение клавишей Tab - то есть, заполнение клавишей Tab, которое варьируется контекстом и, например, знает о флагах и другом синтаксисе команд. Возможно иметь bash
установленный, но нет bash-completion
.
(Чтобы узнать, если какой-то конкретный пакет-bash
, bash-completion
, или что-либо еще - установлено, можно использовать apt list package-name
. Для получения дополнительной информации о пакете можно использовать apt show package-name
и apt policy package-name
.)