【pnpm、npm】各种命令详解

一、pnpm -F mock-server start

js 复制代码
// 跟目录下执行如下命令 
pnpm -F mock-server start

pnpm -F mock-server start 里的 -F--filter 的简写,意思是:只在名为 mock-server 的工作区(package)中执行命令


🔍 分解一下这条命令:

r 复制代码
pnpm -F mock-server start

相当于:

css 复制代码
pnpm --filter mock-server start

🧠 它的作用是:

在 monorepo 项目中,你可能有多个包(比如 frontend、backend、mock-server 等)。pnpm --filter 允许你只对某个特定的包执行命令。

📌 举例:

假设你有这样的 pnpm workspace

vbscript 复制代码
root/
├── packages/
│   ├── frontend/
│   ├── backend/
│   └── mock-server/

如果你在根目录运行:

r 复制代码
pnpm -F mock-server start

PNPM 会跳过 frontend、backend,只进入 mock-server/ 目录,执行这个包的 start 命令(定义在它自己的 package.json 中的 "scripts" 部分)。


🧩 其他常见的 --filter 用法:

命令 作用
pnpm -F frontend install 只在 frontend 包中安装依赖
pnpm -F "mock-*" build 对所有以 mock- 开头的包执行 build
pnpm -F ./packages/backend test 使用路径过滤执行 backend 的 test

✅ 总结:

-F --filter 的简写
作用 指定只对某个工作区包执行命令
使用场景 Monorepo 多包管理下的精准操作

如果你不在用 monorepo,而这个命令出现在你项目里,那就可能是你项目结构中引入了多个 package(例如使用了 pnpm-workspace.yaml)。

相关推荐
MINO吖2 小时前
项目改 pnpm 并使用 Monorepo 发布至 npm 上
前端·npm·node.js
程序员拂雨4 小时前
Node.js面试题
node.js
布兰妮甜11 小时前
Node.js入门指南:开启JavaScript全栈开发之旅
开发语言·javascript·node.js
小李李315 小时前
基于Node.js的Web爬虫: 使用Axios和Cheerio抓取网页数据
前端·爬虫·node.js·跨域
极小狐17 小时前
如何使用极狐GitLab 软件包仓库功能托管 npm?
java·前端·数据库·ci/cd·npm·gitlab·devops
qq_4275060818 小时前
npm下载插件无法更新package.json和package-lock.json文件的解决办法
前端·npm·json
:-)1 天前
macOS上管理多个Node.js版本
macos·node.js
夏子曦1 天前
webpack 的工作流程
前端·webpack·node.js
清羽_ls1 天前
在命令行终端中快速打开npm包官网
前端·npm
thinkQuadratic2 天前
使用node.js来实现SSE服务端向客户端推送消息
node.js