发布于2026-07-10 阅读(0)
扫一扫,手机访问
用过 Composer 的同学都知道 composer list 的存在感不强──大部分人要么对它只有模糊的“看过一眼”的印象,要么干脆靠肌肉记忆直接用 composer -h摸到 GitHub就能查的命令名往外蹦。但实际上就是这么一条看似平平无奇的 list命令藏着不少门道:它为什麽默认看不到插件命令help.还有你不要而 comment与帮助信息的微妙差异这些细节没搞透彻经常会出现“命令敲完了结果返回 starting file ‘composer. json’ not found”之类的低级事故。
今天就来把这几个容易卡住新手、也经常被老手忽略的点彻底拆一遍。
默认输出只有核心命令,想看到插件命令必须加 `--all`
composer list 不加任何参数的情况下确实会展示一个命令列表,但那个列表通常只包含大概 20 条核心命令——像 install、require、update 这类主力工具都在,但插件命令(譬如 phpstan:analyse、normalize)是不会出现在这个默认输出里的。换句话说,你装了一堆插件,如果只用 composer list 往回划,大概率找不到它们。
这时候加一个 --all 就能解决了。不过还有几个附加条件需要注意:
composer install 安装,或者已经在 composer.json 里显式声明了依赖--no-cache 才能刷出最新列表inst 是 install 的别名,但它从不在 list 输出中显示,想知道别名是否生效,老老实实用 composer inst --help 验证几个组合参数,比你硬扫命令行快得多
默认的全量输出通常很长,直接肉眼扫读效率很低。其实 Composer 专门准备了几个过滤和格式化选项:
composer list --all -v:最推荐的组合,全量命令再加上一行简短描述。比如看到 dump-autoload,就能直接知道它的作用是“Dumps the autoloader”,比靠猜测靠谱composer list --no-ansi | grep "dump":去掉 ANSI 颜色控制符后,可以用 grep 稳定匹配到 dump-autoload 和 dump-env,查询结果干干净净composer list config:按命名空间筛选,只显示配置相关命令(config、diagnose 等),尤其适合具体场景下的快速检索composer list --raw:输出为 TSV 格式,每一行形如 dump-autoloadDumps the autoloader ,适合嵌入脚本进行二次解析说白了,上面这几条组合是给两种人准备的:一是想省时间的终端操作者,二是写自动化脚本的。
composer list 和 的细微差异
这两个命令都能显示某个具体命令的完整签名和选项说明,但用起来还是有区别的:
composer list require 输出是紧凑的,字段严格对齐,所以特别适合配合 grep 或管道操作composer require --help 就不是这么回事了——它自动换行、高亮参数名、带交互提示,整体对终端操作更友好composer list create-project 可能不会提示当前目录是否已有 composer.json,而 --help 在某些情况下会补充说明真正让人卡住的,往往不是“记不住命令名”,而是根本没意识到插件命令要加 --all 才会现形、连字符输成了下划线或空格后报错提示不友好、以及 --raw 这种专门为脚本设计的输出格式长期被完全忽略。把这些细节搞清楚,日常里的那些“找不到命令”“帮助信息没看懂”就能少掉一大半。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8