- У меня
./bin
в моем$PATH
. - У меня есть функция
serve()
, определенная в одном из файлов моих~/.bashrc
источников. - У меня есть сценарий на
/Users/deefour/some/project/bin/serve
Когда я cd
в /Users/deefour/some/project
и запустить
➜ serve
serve()
функция выполняется. Есть ли способ, чтобы дать приоритет в bin/serve
сценария, без явного запуска
➜ ./bin/serve
или вообще, есть ли способ, чтобы дать команды, найденные с помощью $PATH
поиска приоритета над определенным пользователем функциями с одинаковым именем?
Мне это нравится, но мой идеал заключается в том, чтобы ничего не вводить из командной строки. Я ищу, если существует './Bin/serve', запустите это, если нет, запустите функцию' serve() ', полученную из' ~/.bashrc'. В идеале, что-то, что не является специфическим для этой команды. – deefour
Если это то, что вы хотите, тогда вы захотите определить функцию по-разному.Я могу придумать несколько подходов: либо вы определяете своего обработчика с отсутствием команды catch-all для поиска в пространстве имен функций, либо вы пишете свою функцию, чтобы сначала искать команду в PATH с тем же именем и действовать только тогда, когда не найден. –
А я думаю, что я могу что-то сделать на основе вашего редактирования и идеи «catch-all command-not-found handle». Спасибо! – deefour