linux 安装 npm pnpm

一,npm pnpm介绍

`npm` 是 Node.js 的包管理器(Node Package Manager),用于管理和分发 JavaScript 项目中的依赖项。以下是一些常用的 `npm` 命令:

  1. **`npm init`**: 初始化一个新的 Node.js 项目。该命令会创建一个 `package.json` 文件,其中包含项目的基本信息。

npm init

  1. **`npm install`**: 安装项目的依赖项。可以使用 `npm install <package-name>` 安装特定的包,或者使用 `npm install` 安装 `package.json` 中定义的所有依赖项。

npm install

  1. **`npm install -g`**: 全局安装一个包,使其在系统中的任何地方都可以访问。

npm install -g <package-name>

  1. **`npm uninstall`**: 卸载一个已安装的包。

npm uninstall <package-name>

  1. **`npm update`**: 更新已安装的包到最新版本。

npm update

  1. **`npm search`**: 搜索可用的 Node.js 包。

npm search <package-name>

  1. **`npm info`**: 显示有关包的详细信息,包括版本、依赖项等。

npm info <package-name>

  1. **`npm run`**: 运行在 `package.json` 文件中定义的脚本。

npm run <script-name>

  1. **`npm list`**: 显示当前项目的所有已安装的包及其版本。

npm list

  1. **`npm audit`**: 检查项目中的依赖项是否有已知的安全漏洞。

npm audit

`pnpm` 是另一个 JavaScript 包管理工具,类似于 `npm`,但有一些独特的特性。以下是一些关于 `pnpm` 的主要特点和用法:

  1. **依赖共享:** 与 `npm` 和 `yarn` 不同,`pnpm` 使用硬链接和符号链接来共享依赖项,从而节省磁盘空间。这意味着相同的包只会在磁盘上存储一次,而不是为每个项目复制一份。

  2. **快速安装:** 由于依赖项的共享和符号链接,`pnpm` 的安装速度通常比 `npm` 和 `yarn` 更快。

  3. **原子操作:** `pnpm` 的操作是原子的,即使在安装或卸载过程中发生中断,也不会留下不完整或损坏的状态。

  4. **单个版本存储:** `pnpm` 将每个包的不同版本存储在单独的目录中,以避免版本冲突。

以下是一些常见的 `pnpm` 命令:

  • **`pnpm install`**: 安装项目的依赖项。

pnpm install

  • **`pnpm add`**: 添加一个新的依赖项。

pnpm add <package-name>

  • **`pnpm remove`**: 移除一个依赖项。

pnpm remove <package-name>

  • **`pnpm run`**: 运行在 `package.json` 文件中定义的脚本。

pnpm run <script-name>

  • **`pnpm list`**: 显示当前项目的所有已安装的包及其版本。

pnpm list

  • **`pnpm store status`**: 显示本地存储的统计信息,包括节省的磁盘空间等。

pnpm store status

二,安装流程

yum -y install npm

npm install -g pnpm

相关推荐
会周易的程序员1 分钟前
openplc runtimev4 Docker 部署
运维·c++·物联网·docker·容器·软件工程·iot
不爱缺氧i3 分钟前
ubuntu离线安装mariadb
linux·ubuntu·mariadb
疯狂敲代码的老刘15 分钟前
JDK 1.6到25 全版本网盘合集 (Windows + Mac + Linux)
java·linux·windows·macos·jdk
爆米花byh19 分钟前
在RockyLinux9环境的Storm2.8.3单机版安装
linux·中间件·storm
不倒翁玩偶20 分钟前
npm : 无法将“npm”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。
前端·npm·node.js
纤纡.20 分钟前
Linux 下 MySQL 数据类型与约束:第三章核心表格归纳与实战应用
linux·mysql
陈桴浮海29 分钟前
【Linux&Ansible】学习笔记合集三
linux·运维·云原生·ansible
小Pawn爷30 分钟前
1.Docker基础
运维·docker·容器
chinesegf32 分钟前
清理docker残留镜像images
运维·docker·容器
江湖有缘36 分钟前
基于华为openEuler系统部署Gitblit服务器
运维·服务器·华为