composer怎么查看所有的可用命令_composer list用法【基础】

6次阅读

composer list 默认只显示约20个核心命令,插件命令需加–all参数才可见;命令名用短横线分隔,大小写不敏感但空格和下划线会导致报错。

composer怎么查看所有的可用命令_composer list用法【基础】

直接运行 composer list 就能列出所有可用命令,但默认只显示核心命令;要看到全部(包括插件提供的),得加 --all 参数。

为什么 composer list 看不到某些命令?

Composer 默认隐藏插件命令和部分“非主干”命令,避免初学者被信息淹没。比如 composer normalize(来自 ergebnis/composer-normalize)或 composer outdated --direct 的子选项,不加参数就不出现在默认列表里。

  • 不加参数:仅显示约 20 个高频核心命令(如 installrequireupdate
  • --all:列出所有已加载插件注册的命令,数量可能翻倍
  • -v(verbose):在命令后附带简短描述,比纯 list 更实用

composer list 常用组合与实际用途

日常查命令,别只敲 composer list —— 它太“干净”,反而不好用:

  • composer list --all -v:最推荐,全量 + 描述,一眼看出 dump-autoload 是“Dumps the autoloader
  • composer list | grep require:快速过滤,比如找 require 相关变体(require-dev 不是独立命令,但能帮你确认它属于 require 的选项)
  • composer list dump:输入命令前缀可自动匹配,dump 会列出 dump-autoloaddump-env(如果装了 vlucas/phpdotenv 插件)

注意命令名大小写与空格陷阱

Composer 命令本身不区分大小写(COMPOSER UPDATE 也能跑),但参数和选项严格区分;更关键的是:命令名里有连字符,不是下划线 —— 别把 create-project 错记成 create_project,否则报错 Command "create_project" is not defined

  • 所有内置命令都用短横线分隔:showoutdatedvalidatearchive
  • 插件命令命名风格不统一,有的带 vendor 前缀(如 phpstan:analyse),这种必须完整输入,不能只打 phpstan
  • 执行时多一个空格或少一个连字符,错误提示不会告诉你“你少打了 -”,只会冷冰冰说 Command "dump autoload" is not defined(注意空格触发了错误解析)

真正容易卡住的,往往不是记不住命令,而是没意识到插件命令要 --all 才显形,以及连字符输成下划线或空格后根本搜不到对应提示。

text=ZqhQzanResources