Как расширить псевдонимы inline в bash?

Есть ли способ расширить псевдонимы inline в bash?

$bash>alias ll='ls -l ' $bash>ll<tab> $bash>ls -l 

3 Solutions collect form web for “Как расширить псевдонимы inline в bash?”

Вы можете нажать Ctrl- Alt- e, чтобы выполнить функцию readline function shell-expand-line которая будет выполнять псевдонимы, историю и расширения слов. Обратите внимание, что на некоторых клавиатурах Meta не Alt . Вам может потребоваться нажать Esc, затем Ctrl- e

Функции alias-expand-line и history-and-alias-expand-line по умолчанию не связаны, но вы можете связать их, добавив строки, похожие на следующие, в ваш файл ~/.inputrc .

 "\e\Cl": alias-expand-line 

Который заставит Ctrl- Alt- l (нижний регистр «ell») выполнить только расширение псевдонима.

На самом деле это может быть гораздо более простой способ сделать то, что вы пытаетесь (версия bash > = 4.2.29):

 shopt -s direxpand shopt -s expand_aliases 

shopt страница shopt : https://www.gnu.org/software/bash/manual/html_node/The-Shopt-Builtin.html

Это не работает. Но я предполагаю / надеюсь, что что-то подобное можно сделать, чтобы делать то, что вы хотите сделать. Вам придется использовать свой собственный скрипт завершения. Вот как вы это делаете:

 _ll() { COMPREPLY=(ls -l) #The next line does not work. I just hope there were a way to replace that word COMP_WORDS[COMP_CWORD-1]="ls -l" } complete -F _ll ll 

Теперь отправьте полный файл bash_completion ( http://caliban.org/bash ) и поместите вышеупомянутый скрипт в файл внутри каталога bash_completion.d, который скрипт вы получите из ссылок URL. Дайте мне знать, если это не сработает.

Благодарю.

  • Нет необходимости экспортировать при запуске функций в подоболочке
  • Как подключить stderr, а не stdout?
  • Очистить stdin перед чтением
  • Как сравнить два числа с плавающей запятой в Bash?
  • Как ввести регистрационную информацию для веб-сайта из командной строки linux
  • Где хранить скрипты bash, которые все пользователи могут выполнять на Debian?
  • Принудительный сценарий bash для выполнения до завершения, когда некоторые элементы могут
  • Gnome: изменить название текущего терминала из командной строки bash
  • Определите, был ли запущен скрипт bash при нажатии значка или из терминала
  • Переименуйте группу файлов с помощью одной команды
  • Linux bash iterating и Break
  • Interesting Posts

    Скопировать текст Word 2010 на новый документ

    Как отправлять сообщения в stream STA с помощью насоса сообщений?

    Использование нового Unity VideoPlayer и VideoClip API для воспроизведения видео

    Фон кода из Visual Studio

    Что такое тип связи IEEE 802.3 Ethernet: синхронный или асинхронный?

    Сопоставляет ли streamобезопасность в C ++ 11?

    Entity Framework объединяет 3 таблицы

    Не удалось загрузить модуль memtrack Logcat Error

    Разница между чипсетом и материнской платой

    Как получить различные фоновые изображения на моих двойных мониторах?

    Почему Chrome устанавливается непосредственно в каталог пользователя вместо файлов программы?

    jqGrid: использование нескольких методов фильтрации данных

    Преобразование гостевой системы VirtualBox в основную ОС

    Я хочу переименовать один текст для массовых файлов в папку в Windows 7

    Как загрузить сборку в AppDomain со всеми ссылками рекурсивно?

    Давайте будем гением компьютера.