Bash автозаполнение по символической ссылке на каталог, завершенный на весь каталог, включая косую черту [duplicate]


44

Возможный дубликат:
завершение табуляции с помощью каталогов / ссылок

когда у меня есть символическая ссылка, fooссылающаяся на каталог, bar/и я начинаю печатать fи нажимать tab, она завершается, fooно я хотел бы завершить ее, foo/чтобы я мог немедленно добавить следующий символ для дальнейших завершений. Как я могу это сделать?

Ответы:


70

Включите mark-symlinked-directoriesопцию для readline .

  1. Редактировать ~/.inputrc:

    $include /etc/inputrc
    set mark-symlinked-directories on
    
  2. Нажмите C-x, C-rчтобы перезагрузить настройки.

Смотрите раздел READLINE на странице руководства bashдля дальнейшей документации.

Для тех, кто не хочет добавлять другой файл точек, вы также можете добавить эту строку в ваш ~/.bashrc:

bind 'set mark-symlinked-directories on'

Большое спасибо, я уже несколько месяцев сталкиваюсь с различиями между OSX (по умолчанию on) и Linux (по умолчанию off), и я наконец сыт по горло достаточно, чтобы погуглить! Ты мой новый герой. :)
staticfloat

3
На некоторых терминалах Cx Cr у меня не работал, поэтому я используюbind -f ~/.inputrc
blockloop

3
Это показывает мощь стека обмена в сочетании с простым ответом и хорошо сформулированным вопросом, ответил на мой вопрос с первой попытки, попал сюда через гугл, спасибо. :)
DusteD

1
для чего эта линия $include /etc/inputrc?
Раззак

@razzak: загружает дополнительные настройки из этого файла, который обычно имеет различные стандартные сочетания клавиш для общих терминалов. (Обычно они загружаются автоматически, но если у вас есть ~/.inputrcсобственный, вам нужно загрузить общесистемный файл вручную.) См. Раздел READLINE на странице bashсправки для получения дополнительной документации.
Гравитация

3

Я не знаю, сможете ли вы сделать это в точности так, как вы описали, но если вы нажмете tabдважды, это должно завершить удаление.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.