¿Hay alguna manera de eliminar algunos comandos de la php artisan list
?
Me parece que es demasiado largo y, a menudo, tengo que desplazarme o hacer grepping. Por ejemplo, algunos proyectos que no uso en cola y ocultar los comandos de cola serán útiles.
Simplemente anule el ArtisanServiceProvider por ejemplo:
crear un nuevo proveedor lo nombrará ProductionArtisanServiceProvider
php artisan make:provider ProductionArtisanServiceProvider
Abra el nuevo proveedor y cámbielo a la siguiente
namespace App\Providers; use Illuminate\Foundation\Providers\ArtisanServiceProvider as IlluminateProvider; class ProductionArtisanServiceProvider extends IlluminateProvider { protected $devCommands = [ 'AppName' => 'command.app.name', ]; }
Usted ve arriba estoy anulando los $ devCommands para la lista completa
buscar en el interior Illuminate \ Foundation \ Providers \ ArtisanServiceProvider
Finalmente, en su AppServiceProvider en la función de registro, agregue su nuevo proveedor y nos aseguramos de que solo se cargue en el entorno de producción
if ($this->app->environment() == 'production') { $this->app->register(\App\Providers\ProductionArtisanServiceProvider::class); }
Ahora todos los comandos innecesarios se han ido
No hay una buena manera de hacerlo. La mayor parte de la lista de comandos de artesanos principales se almacena en la clase Illuminate\Foundation\Providers\ArtisanServiceProvider
dentro de la propiedad $commands
. Algunos se registran directamente de sus respectivos proveedores de servicios, como los Queue en Illuminate\Queue\QueueServiceProvider
. Entonces, en teoría, podría comentarlos por ahí, pero no debería hacer ningún cambio en el directorio de vendor
en primer lugar, ya que se pueden deshacer en cualquier actualización.
Si tiene que revisar la lista de comandos con demasiada frecuencia, sería mejor que se tomara un poco de tiempo para memorizar al menos los comandos que usa con regularidad, ya que haría que su flujo de trabajo sea mucho más eficiente.
Si por casualidad está usando zsh con Oh My Zsh , entonces podría usar el complemento laravel5
incluido que ofrece autocompletado en su terminal, para todos los comandos Laravel registrados. Simplemente escriba php artisan
y presione TAB para obtener una lista de autocompletar de los comandos, no se requiere desplazamiento :).
Según lo actualizado por Bogdan, no hay una buena manera de eliminar el comando de la lista de artesanos. Una opción disponible es anular el comando existente con el comando nuevo con la misma $signature.
Si todos los comandos en los que está interesado comienzan con el mismo prefijo, por ejemplo prefix:
puede enumerarlos usando el artisan list prefix
.
Posarse. Finalmente conseguí una buena solución. Crear mi propio alias de bash con grep.
Agrega esto a mi ~ / .bashrc
Todo mi comando comienza con mi empresa: comando
Utilice cualquier atajo de 3 letras. can
por mí porque es la primera letra 3 del nombre de mi empresa.
alias can='php artisan | grep mycompany'