2

Просто переключился с tcsh на bash 4.2 на OSX, и autocd позволил мне это сделать. Но кажется, что по умолчанию, если вы вводите имя каталога, который также является именем исполняемого файла в моем пути, autocd не вызывается, и команда запускается.

Есть ли способ изменить это поведение, чтобы он предполагал, что я хочу быть в безопасности и перейдите в указанный каталог?

1 ответ1

4

Вы, вероятно, не можете, что указывает на основную проблему, касающуюся того, почему такая функция, как autocd никогда не может стать стандартной: она вносит двусмысленность. Если вы переключили поведение: как бы вы запустили программу, которая называется так же, как в настоящее время доступный подкаталог? Он становится недетерминированным, что является худшей вещью, которой может стать пользовательский интерфейс, imho (и даже хуже для неинтерактивных оболочек, но этого можно избежать, просто установив autocd для интерактивных оболочек).

Когда я говорю «вы , вероятно , не можешь», я имею в виду , что я просматривал раздел shopt из man bash и не нашел такой модификатора. Конечно, это можно исправить, например, изменив исходный код Bash, но я думаю, что ваш вопрос касался доступной настройки, чтобы исправить это для вас.

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