Saltar al contenido
Rutas de consola en Laravel

En Laravel, normalmente trabajamos con las rutas web y las rutas api, las cuales son puntos de entrada a nuestra aplicación y nos permiten exponer ciertos recursos para nuestros usuarios, pero la cosa no queda ahí. Las rutas de consola en Laravel pueden ser definidas en el archivo console.php del directorio routes, estas rutas nos permiten definir comandos haciendo uso de closures.

Para entender cómo funcionan las rutas de consola en Laravel, primero debemos entender cómo están configuradas, para ello, podemos abrir el Kernel de consola, veremos lo siguiente:

<?php

protected function commands(): void
{
    $this->load(__DIR__.'/Commands');

    require base_path('routes/console.php');
}

Como puedes ver, simplemente se hace un require del archivo routes/console.php, y si abrimos este archivo, veremos que tenemos el siguiente código:

<?php

use Illuminate\Foundation\Inspiring;
use Illuminate\Support\Facades\Artisan;

/*
|--------------------------------------------------------------------------
| Console Routes
|--------------------------------------------------------------------------
|
| This file is where you may define all of your Closure based console
| commands. Each Closure is bound to a command instance allowing a
| simple approach to interacting with each command's IO methods.
|
*/

Artisan::command('inspire', function () {
    $this->comment(Inspiring::quote());
})->purpose('Display an inspiring quote');

Esto simplemente significa que si ejecutamos el siguiente comando en el terminal tendremos una cita aleatoria como respuesta.


Comando inspire Laravel

Nuestro propio comando route:list

Para entender qué podemos hacer con las rutas de consola de Laravel, lo mejor es ver un ejemplo completo, para ello, vamos a crear nuestro propio comando route:list para mostrar en consola todas las rutas de nuestra aplicación:

<?php

Artisan::command('custom-route:list', function () 
{
    $routes = \Illuminate\Support\Facades\Route::getRoutes();
    $headers = ['Método', 'URI', 'Nombre', 'Acción'];
    $rows = [];
    foreach ($routes as $route) {
        $rows[] = [
            $route->methods[0],
            $route->uri,
            $route->getName(),
            $route->getActionName(),
        ];
    }
    $this->table($headers, $rows);
})->describe('Muestra las rutas de la aplicación');

Comando personalizado route:list de artisan

Como puedes ver, las rutas de consola de Laravel son poderosas, podemos hacer grandes cosas si las llegamos a conocer a fondo.

school Curso completo

Curso Laravel 12
Completo 2026

El único curso 100% actualizado que incluye Laravel 12, Livewire 3, Vue 3, React 19 e Inertia 2. Aprende con proyectos reales y las últimas funcionalidades.

access_time 8 horas de contenido
layers 4 tecnologías en 1
update 100% actualizado
code Proyectos prácticos
Ver Curso Laravel 12 arrow_forward

star Incluido en cualquier suscripción

Rutas de aprendizaje