*nix оболочка с завершением в стиле IOS?

Существует ли оболочка Linux, которая позволит вам вводить менее полных команд, как вы можете с Cisco IOS, по крайней мере, для первой команды (а не ее аргументов)?

Я не очень задумывался, хорошо ли это на самом деле, но, возможно, было бы интересно поиграть:-)

3 ответа

Решение

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

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

FWIW, на моем tcsh настройка, набор текста tel<tab> предлагает мне telinit, telltc а также telnet, Только однажды я наберу n делает это их автозаполнение до последнего из тех.

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

Нет, я не знаю таких как оболочка. Тем не менее, вы можете приблизиться к тому, что вы, вероятно, хотите с помощью табуляции (введите часть команды и нажмите <Tab> ключ, и оболочка попытается выполнить команду из того, что вы ей дали.

Кроме того, вы можете определить псевдонимы команд с помощью встроенной оболочки alias, вот так:

alias ll='ls -l'

Который заменит команду ll с ls -l всякий раз, когда вы набираете это потом.

bash также позволяет автоматическое заполнение вкладок для произвольных наборов данных (называемых Programmable Bash Completion), что особенно полезно для имен хостов SSH. Возьмите /etc/bash_completion с http://www.caliban.org/bash/index.shtml и загрузите его при входе в систему.

Другие вопросы по тегам