Иногда мне нравится иметь очень настраиваемые псевдонимы bash и, возможно, сочетания клавиш, когда я вхожу в папку (это может быть проект, в котором я использую много команд из CLI).
Предположим, что когда я вхожу в папку типа «projectAlpha /», я ожидаю несколько пользовательских псевдонимов, таких как:
alias doTaskX='./app arg1 arg2...|filter arg1 arg2...'
- ...
Больше, чем это я думал о:
- Показать полезное сообщение, показывающее псевдонимы и общие команды
- Отображение некоторых общих пользовательских комбинаций клавиш для моего проекта
Но как только я покидаю корень моего проекта, эти настройки становятся недоступными.
Каков наилучший подход, чтобы сделать это сегодня?
Ответы:
Bash имеет специальную переменную,
PROMPT_COMMAND
содержимое которой выполняется каждый раз после выполнения команды, поэтому вы можете установить ее следующим образом:Отныне каждый раз, когда вы будете находиться в
/tmp
каталоге,ll
будет создан псевдоним , а во всех остальных каталогах он будет удален.Вероятно, более практичным является собрать все ваши псевдонимы и другие вещи в одной функции (скажем
makealias
) и все псевдонимы в другой функции,makeunalias
которые вы можете запустить в зависимости от ваших потребностей, что-то вродеОбратите внимание, что перенаправление stderr присутствует только для предотвращения некоторых бесполезных в этом случае предупреждений.
источник