Удалить команду из списка php artisan

Есть ли способ удалить некоторые команды из php artisan list ?

Я нахожу, что он слишком длинный, и часто мне приходится прокручивать или делать grepping. Например, какой-то проект, который я не использую в очереди, и скрытие команд очереди будет полезна.

Solutions Collecting From Web of "Удалить команду из списка php artisan"

Просто переопределите ArtisanServiceProvider, например:

создание нового провайдера назовет его ProductionArtisanServiceProvider

 php artisan make:provider ProductionArtisanServiceProvider 

Откройте нового поставщика и измените его на следующие

 namespace App\Providers; use Illuminate\Foundation\Providers\ArtisanServiceProvider as IlluminateProvider; class ProductionArtisanServiceProvider extends IlluminateProvider { protected $devCommands = [ 'AppName' => 'command.app.name', ]; } 

Вы видите выше, я переопределяю $ devCommands для полного списка

заглянуть внутрь Illuminate \ Foundation \ Providers \ ArtisanServiceProvider

Наконец, в вашем AppServiceProvider в функции register добавьте нового поставщика и убедитесь, что он загружен только в производственную среду

  if ($this->app->environment() == 'production') { $this->app->register(\App\Providers\ProductionArtisanServiceProvider::class); } 

Теперь все ненужные команды исчезли

Нет никакого хорошего способа сделать это. Большинство основных команд команд Illuminate\Foundation\Providers\ArtisanServiceProvider хранятся в классе Illuminate\Foundation\Providers\ArtisanServiceProvider в свойстве $commands . Некоторые из них зарегистрированы непосредственно у соответствующих поставщиков услуг, таких как Queue в Illuminate\Queue\QueueServiceProvider . Поэтому теоретически вы можете прокомментировать их там, но в первую очередь вы не должны вносить какие-либо изменения в каталог vendor , потому что их можно отменить при любом обновлении.

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


Если вы случайно используете zsh с Oh My Zsh , вы можете использовать включенный плагин laravel5 который предлагает автозаполнение в вашем терминале, для всех зарегистрированных команд Laravel. Просто напишите php artisan и нажмите TAB для списка автозаполнения команд, не требуется прокрутка :).

Освещенный. Наконец-то я получил хорошее решение. Создайте свой собственный псевдоним bash с помощью grep.

Добавьте это к моему ~ / .bashrc

Вся моя команда начинается с mycompany: command

Используйте любую комбинацию из 3 букв. can для меня, потому что это первые 3 письма от имени моей компании.

 alias can='php artisan | grep mycompany' 

Как обновлено Богданом, нет хорошего способа удалить команду из списка мастеров. Один из доступных вариантов – переопределить существующую команду с помощью новой команды с той же $signature.

Если все команды, которые вас интересуют, начинаются с одного и того же префикса, например prefix: вы можете перечислить их, используя artisan list prefix .