1

Я использую следующую функцию для отображения содержимого каталога после изменения текущего рабочего каталога:

function c() {
  cd $@;
  ls;
}

Как включить завершение имени каталога bash для функции 'c', чтобы оно также работало для каталогов в $ CDPATH?

1 ответ1

3

Вы можете установить функцию завершения команды cd на функцию c . Сначала определите, какую функцию завершения назначила команда cd. В моем случае:

$ complete | grep " cd$"
complete -o nospace -F _cd cd

Это функция _cd , в моем случае _cd учитывает переменную $CDPATH . Теперь установите функцию завершения ваших функций:

$ complete -o nospace -F _cd c

Теперь при вводе c <tab><tab> те же предложения, что и при вводе cd <tab><tab>

Чтобы сделать его постоянным, напишите команду в ваш ~/.bashrc .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .