bash-завершення лише після отримання .bash_profile


1

У моєму .bash_profile встановлено bash-завершення за допомогою macports та наступних рядків

if [ -f /opt/local/etc/bash_completion ]; then
    . /opt/local/etc/bash_completion
fi

але завершення не працює, коли я відкриваю Terminal, проте він починає працювати після пошуку .bash_profile або після 'bash -l'.

Я запускаю OSX 10.6, у налаштуваннях терміналу вибрано "Shell відкривається: обрана оболонка входу за замовчуванням (/ usr / bin / login)".


Вирішено: те, що я пропустив, це рядок у розділі Як використовувати bash-завершення

Переконайтеся, що ви додали це після будь-якої маніпуляції з PATH, оскільки в іншому випадку завершення файлу не працюватиме належним чином.

коли я перемістив лінії після маніпуляції PATH, все працює добре.

Відповіді:


1

Я б скористався chshкомандою, щоб переконатися, що ваша оболонка насправді Bash; якщо ваша оболонка /bin/shзамість /bin/bash, Bash буде імітувати історичну оболонку, і не читатиме ~/.bash_profile.

Від man bash:

Якщо bash викликається ім'ям sh , він намагається максимально наблизити поведінку до запуску історичних версій sh , дотримуючись стандарт POSIX. Коли викликається інтерактивна оболонка входу або неінтерактивна оболонка з опцією --login , вона спочатку намагається прочитати та виконати команди з / etc / profile та ~ / .profile у такому порядку.

[...]

Оскільки оболонка, на яку посилається sh , не намагається читати та виконувати команди з будь-яких інших файлів запуску, параметр --rcfile не впливає.


1
Оболонку облікового запису за замовчуванням можна змінити у налаштуваннях системи »Облікові записи» Клацніть правою кнопкою миші запис »Додатково… . Це /bin/bashза замовчуванням.
Даніель Бек

1
Моя оболонка - '/ bin / bash', і '~ / .bash_profile' читається, все (псевдоніми, підказка), але завершення bash працює нормально.
liborw

@Daniel: Дякую, я не був впевнений, чи змінилася оболонка за замовчуванням з 10.4. @liborw: Чи можете ви зробити свій повний ~ / .bash_profile доступним? Редагування інформації з вашого останнього коментаря в оригінальній публікації також було б корисно.
kate
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.