Я пытаюсь создать псевдонимы для команд, которые я много печатаю. Поскольку я работаю над большим проектом, построенным на Laravel, мне нужно довольно часто использовать инструмент командной строки artisan. Тем не менее, я не часто хочу быть в корневом каталоге с этим файлом.
Мне обычно не приходится подниматься вверх в написанных мной сценариях, поэтому я немного растерялся. Моя первая мысль - попытаться использовать команду типа find . -name artisan
и, если ничего не находит, перейдите на cd ..
и проверяйте снова, пока текущий рабочий каталог не будет /
. Затем я хочу иметь возможность передать аргументы из сценария оболочки в окончательную, найденную копию ремесленника.
Существует ли утилита / соглашение для терминала linux / unix / osx, которая позаботится об этом?
Редактировать:
Извините, я должен был прояснить это раньше, но я не думал об этом.
artisan
- это CLI-интерфейс к фреймворку Laravel PHP. Я работаю в версии 3, но если я начну другой проект в нем, я, вероятно, буду использовать версию 4. Между этими версиями существует множество критических изменений, но, что более важно, artisan
скрипт в корне проекта - это всего лишь скрипт начальной загрузки для кода, живущего внутри фреймворка.
Например, поскольку он имеет локальные зависимые от версии зависимости от ссылки на paths.php
, которая сообщает ему, где другие ресурсы похожи на сам фреймворк, я не думаю, что могу переместить это в каталог bin
и символическую ссылку на него.
Да, я могу ссылаться на скрипт из подкаталогов, но я искал что-то более автоматическое, чем это. Например, как Git находит каталог репозитория из подкаталога? Я знаю, что он должен вернуться вверх в дереве, чтобы найти его, но, поскольку он находится в CI, затрудняется найти его или реализовать в сценарии Shell/Bash.