artisan list — 利用可能なコマンド一覧を表示

artisan
  • カテゴリ: artisan
  • 対応バージョン: Laravel 11・12・PHP 8.2
  • 名前空間 / FQCN / コマンド: php artisan list
  • 関連: help / route:list / about / tinker
  • 変更履歴: 主要オプション(--raw / --format / --short)は Symfony Console 由来で継続提供。(Artisan, Symfony)

要点(TL;DR)

  • すべて/特定名前空間の Artisan コマンドを一覧表示する
  • 最低限の使い方:php artisan list。詳細は php artisan list make--format=json で機械可読に出力可。(Laravel, Artisan)
  • よくある罠
    • JSON など機械可読出力は --format= を付ける(yaml など未対応)。(Artisan)
    • CI でパースする際はグローバル --no-ansi を併用(色コード除去)。(Symfony)

詳細概要

list は最も基本的なメタコマンドで、登録済みの Artisan コマンドをカテゴリ(名前空間)ごとに表示します。特定の名前空間を与えると、その配下のみを表示します。--format により txt / xml / json / md を選べるため、ドキュメント生成や CI の整合チェックにも有用です。(Laravel, Artisan)

構文 / シグネチャ

php artisan list [--raw] [--short] [--format=txt|xml|json|md] [namespace]

このコマンドは Symfony Console の list に準拠しており、上記オプション/引数をサポートします。 (Artisan, Symfony)

引数(表)

引数必須既定値説明
namespacestringいいえなし指定した名前空間のコマンドのみ表示(例: make

オプション(表)

オプション値/型必須既定値説明
--formattxt / xml / json / mdいいえtxt出力フォーマット。機械可読な一覧に便利。(Artisan)
--rawbooleanいいえfalse装飾を外した生の一覧を出力。スクリプト埋め込み向け。(Symfony)
--shortbooleanいいえfalse引数や説明を省いて簡潔に表示。(Artisan)

戻り値:プロセス終了コード(0=成功/非0=失敗)。標準出力に一覧を出力。
例外/副作用:アプリ起動時に .env 読み込みなどの初期化が走るが、ファイル更新やDB変更などの副作用はなし。

使用例

最小例

# すべてのコマンドを表示
php artisan list

実務例

# make 名前空間だけに絞って確認
php artisan list make

# CI 用:JSON で保存して差分チェック
php artisan list --format=json > storage/meta/commands.json

# スクリプト処理:生の一覧を grep で確認
php artisan list --raw | grep '^route:list$' && echo "route:list あり"

--format=json / --raw はスクリプトやCIでの整合チェックに有効。 (Artisan, Symfony)

よくある落とし穴・注意

  • フォーマット指定ミス--format=yaml など未対応フォーマットはエラー。許可値は txt/xml/json/md。(Artisan)
  • 色コード混入:CIでパースする場合は --no-ansi を付けて制御文字を除去。(Symfony)
  • プラグイン/プロバイダ依存:一覧は登録状況に依存。ローカルと本番で差が出る場合は環境差(サービスプロバイダ有無)を確認。

代替・関連APIとの比較

  • help <command>:単一コマンドの詳細。マニュアル用途。(Laravel)
  • route:list:アプリのルートを列挙(機能が別)。(Artisan)
  • about:環境・拡張・設定を俯瞰。健全性チェック向け。(Laravel)

選定基準
「何が使えるか」を素早く把握=list
「特定コマンドのオプションを深掘り」=help
「アプリの公開エンドポイント確認」=route:list

テスト例(Pest)

<?php

use Illuminate\Support\Facades\Artisan;

it('outputs command list as JSON', function () {
    Artisan::call('list', ['--format' => 'json', '--no-ansi' => true]);
    $out = Artisan::output();
    $json = json_decode($out, true);

    expect($json)->toBeArray()
        ->and($json['commands'] ?? [])->not->toBeEmpty();
});

トラブルシュート(エラー別)

症状/エラー原因対処
Unknown output format--format が許可値外txt/xml/json/md のいずれかに修正。(Artisan)
Could not open input file: artisanプロジェクト直下で未実行ルート(artisan がある場所)で実行。
.env 読み込み関連の例外.env 構文ミス/必須値欠落.env を修正。ブート時例外が出ていないかログを確認。

参考リンク

  • Laravel公式「Artisan Console」— list の基本説明。(Laravel)
  • Artisan.page「list — List commands」— オプションとシグネチャ。(Artisan)
  • Symfony Console「list」例 — --raw / --format の挙動。(Symfony)

レン (Wren)

こんにちは。レンです。

Laravelのコードの森に住んでいる、小さな案内役です。
ルーティングの枝やクラスの影を歩きながら、コードの流れや仕組みを眺めています。

このサイトでは、Laravelの基本から実装のコツまで、開発で役立つポイントを静かに整理しています。
難しいことを増やすのではなく、コードの見通しが少し良くなるヒントを届けるのが役目です。

「この処理はどこに書くのがいいのか」
「Laravelではどう考えると整理できるのか」

そんな疑問に、小さなメモを残すような気持ちで記事を書いています。

コードを書いている途中で迷ったとき、
このサイトが少し立ち止まって整理できる場所になればうれしいです。

レン (Wren)をフォローする