pnpm安装与卸载

2023-11-06

官方文档

1. 安装

1.1 Linux-CentOS

两种安装方式

  • 一种是通过npm进行安装,需要Node.js至少v14
  • 一种是使用独立脚本直接安装

1.1.1 使用脚本直接安装

install.sh

# bash
wget -qO- https://get.pnpm.io/install.sh | ENV="~/.bashrc" SHELL="$(which bash)" bash -
# sh
wget -qO- https://get.pnpm.io/install.sh | ENV="~/.shrc" SHELL="$(which sh)" sh -
# dash
wget -qO- https://get.pnpm.io/install.sh | ENV="~/.dashrc" SHELL="$(which dash)" dash -

指定安装版本

curl -fsSL https://get.pnpm.io/install.sh | env PNPM_VERSION=<version> sh -

1.2.2 通过npm安装

安装nodejs

yum install git -y
git clone https://gitee.com/duolili/shell-scripts.git
sh shell-scripts/nodejs/node-install.sh
# 需安装v14版本以上,如:v15.0.0

安装pnpm

npm install -g pnpm

:::info
Node.js与pnpm版本兼容性
:::

Node.js pnpm 4 pnpm 5 pnpm 6 pnpm 7
Node.js 10 ✔️ ✔️
Node.js 12 ✔️ ✔️ ✔️
Node.js 14 ✔️ ✔️ ✔️ ✔️
Node.js 16 未知 未知 ✔️ ✔️
Node.js 18 未知 未知 ✔️ ✔️

2. 卸载

卸载操作可分为三步执行:

  • 移除全局安装的包
  • 移除pnpm cli
  • 删除全局内容可寻址存储

2.1 移除全局安装的包

列出全局安装的包:pnpm ls -g

  • 方法一:运行命令逐个包删除 pnpm rm -g …
  • 方法二:运行命令直接删除存放包的目录
    • 查看全局目录位置pnpm root -g
    • 手动删除目录

2.2 移除pnpm cli

安装方式不同,移除方式也不同

2.2.1 脚本直接安装

直接删除pnpm主目录

rm -rf $PNPM_HOME

清理 shell 配置文件中 PNPM_HOME 的环境变量( H O M E / . b a s h r c 、 HOME/.bashrc、 HOME/.bashrcHOME/.zshrc 或者 $HOME/.config/fish/config.fish)

2.2.2 使用npm安装

使用命令直接卸载

npm rm -g pnpm
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

pnpm安装与卸载 的相关文章

  • nginx 上的多个网站和可用网站

    通过 nginx 的基本安装 您的sites available文件夹只有一个文件 default 怎么样sites available文件夹的工作原理以及如何使用它来托管多个 单独的 网站 只是为了添加另一种方法 您可以为您托管的每个虚拟
  • 如何在bash中使用jq从变量中包含的json中提取值

    我正在编写一个 bash 脚本 其中存储了一个 json 值 现在我想使用 Jq 提取该 json 中的值 使用的代码是 json val code lyz1To6ZTWClDHSiaeXyxg redirect to http examp
  • 如何在 shell 脚本中并行运行多个实例以提高时间效率[重复]

    这个问题在这里已经有答案了 我正在使用 shell 脚本 它读取 16000 行的输入文件 运行该脚本需要8个多小时 我需要减少它 所以我将其划分为 8 个实例并读取数据 其中我使用 for 循环迭代 8 个文件 并在其中使用 while
  • 使用终端时 Git 推送在总计后卡住了?

    我尝试将一些文件推送到Github 总大小只有22 2M 我不知道为什么它在总行之后卡住了 我读过推送到 Github 时 Git 推送挂起 https stackoverflow com questions 16906161 git pu
  • apt-get 无法在 ubuntu dockerfile 中工作

    我对 docker 相当陌生 正在尝试通过编写自己的镜像来学习 并且目前正在阅读 Docker 的实际操作 ISBN 1633430235 在我自己的代码和书中的示例 第 146 页 中 我想通过 dockerfile 安装 git My
  • git 日志历史记录图,每次提交一行,彩色,带有日期

    我需要的格式如下 git log decorate graph oneline date order 但我也需要它 包含日期 短 具有相同的颜色 I tried git log decorate graph oneline date ord
  • 大多数 Linux 系统头文件与 C++ 兼容吗?

    大多数 Linux 系统头文件 API C 兼容吗 今天我试图做这样的事情 include
  • 如何在 macOS 上将 Git 升级到最新版本?

    我刚刚购买了一台装有 OS X Lion 的新 Mac 我在终端中检查了默认安装的 git 版本 我得到了答案 git version gt git version 1 7 5 4 我想将 git 升级到最新版本 1 7 8 3 因此我下载
  • bash 行长度限制从何而来?

    在运行 Bash 4 4 19 标准安装 的 Solaris 11 上 输入行似乎有 256 个字符的限制 我想了解这个限制从何而来 我浏览了手册页 但没有找到任何解决此问题的内容 仅当未使用 readline 库时才会发生这种情况 在下面
  • 在哪里可以找到并安装 pygame 的依赖项?

    我对 Linux 比较陌生 正在尝试安装 python 的 pygame 开发环境 当我运行 setup py 时 它说我需要安装以下依赖项 我找到并安装了其中之一 SDL 然而 其他人则更加难以捉摸 Hunting dependencie
  • Linux 中的动态环境变量?

    Linux 中是否可以通过某种方式拥有动态环境变量 我有一个网络服务器 网站遵循以下布局 site qa production 我想要一个环境变量 例如 APPLICATION ENV 当我在 qa 目录中时设置为 qa 当我在生产目录中时
  • 如何有效截断文件头?

    大家都知道truncate file size 函数 通过截断文件尾部将文件大小更改为给定大小 但是如何做同样的事情 只截断文件的尾部和头部呢 通常 您必须重写整个文件 最简单的方法是跳过前几个字节 将其他所有内容复制到临时文件中 并在完成
  • 如何使用GDB修改内存内容?

    我知道我们可以使用几个命令来访问和读取内存 例如 print p x 但是如何更改任何特定位置的内存内容 在 GDB 中调试时 最简单的是设置程序变量 参见GDB 分配 http sourceware org gdb current onl
  • 如何判断 Bash 中是否存在文件?

    这会检查文件是否存在 bin bash FILE 1 if f FILE then echo File FILE exists else echo File FILE does not exist fi 我如何只检查文件是否存在not ex
  • 有没有办法让我简化这些回声? [复制]

    这个问题在这里已经有答案了 我仍在学习如何编写 shell 脚本 并且我面临着一个挑战 让我更容易回显 Name1 Name2 Name15 我不太确定从哪里开始 我已经想法 但如果我搞砸了 我不想看起来很傻 有什么帮助吗 我实际上还没有尝
  • git 提交错误:检测到大文件

    您好 我正在为 ios 8 1 开发一个应用程序 xcode 我已经使用 googleMaps 框架来实现自动完成功能 当我尝试在 Git 中推送我的项目时 我收到大文件检测错误 后来尝试使用 git lfs 并跟踪 git 检测到的文件
  • 对目录中的所有文件执行命令

    有人可以提供执行以下操作的代码 假设有一个文件目录 所有这些文件都需要通过程序运行 该程序将结果输出到标准输出 我需要一个脚本 该脚本将进入一个目录 对每个文件执行命令 并将输出连接到一个大输出文件中 例如 要在 1 个文件上运行命令 cm
  • OSX bash 最小化窗口

    在 Mac 中并使用 bash shell 我想执行一个包含单个命令 启动 Jupyter Lab 的文件并立即最小化终端窗口 有没有办法在不安装第三方软件的情况下做到这一点 是的 只需使用osascript https ss64 com
  • 使用 find 命令搜索直到第一个匹配项

    我只需要搜索可以在任何地方的特定目录有没有办法运行此命令直到第一个匹配 谢谢 我现在使用 find noleaf name experiment type d wc l 正如鲁道夫 米尔鲍尔 Rudolf M hlbauer 所提到的 qu
  • 如何在 Linux shell 中将十六进制转换为 ASCII 字符?

    假设我有一个字符串5a 这是 ASCII 字母的十六进制表示Z 我需要找到一个 Linux shell 命令 它将接受一个十六进制字符串并输出该十六进制字符串代表的 ASCII 字符 所以如果我这样做 echo 5a command im

随机推荐

  • 爬虫发送带headers报错内容为ValueError: too many values to unpack (expected 2)

    这个是我报错的代码 author li lee import requests 变量url接收访问地址 url http www baidu com 加headers 将浏览器的用户代理 写到headers中 用于重置User Agent
  • 《C++ Primer Plus 第六版》编程练习参考答案(第四章)

    第四章 第一题 include
  • NativeWindow 妙用,截取windows消息

    namespace System Windows Forms using System using System ComponentModel using System Drawing using System Drawing Design
  • linux设置VT模式,android – 如何在Linux上的BIOS和KVM模块中启用VT-x?

    KVM Installation I referred the instructions from Ubuntu community documentation page to get KVM installed To see if you
  • C#使用FFmpeg的总结

    上篇文章提到FFmpeg解决项目中视频和语音问题 说道C 和FFmpeg不得不提的2个类库 1 Xabe FFmpeg 简单查看了下源码和demo 发现基于ffmpeg exe的命令行参数进行处理 2 FFmpeg AutoGen 把C语言
  • sqlserver日期格式转换yyyymmdd_8个案例,玩转时间合并转换运算和提取,3个函数就够了...

    大家好 上一篇文章分享了关于日期时间的提取函数和判定 讲解了如何对日期是否是周末进行判定 今天继续分享关于日期时间方面的合并 提取方面的剩余内容 以及如何根据身份证号求算年龄 如何根据入职时间计算员工工龄两个案例 那么就让我们开始吧 操作一
  • jmeter errstr :“unsupported field type for multipart.FileHeader“

    在使用jmeter测试接口的时候 提示errstr unsupported field type for multipart FileHeader 如图所示 这是因为我们 在HTTP信息头管理加content type参数有问题 直接在HT
  • VS社区版许可证过期更新

    VS社区版许可证过期更新 VS社区版是免费使用的 然而会有许可证过期的问题 这时候就需要登录 再进行更新许可证 在登录时卡顿了一天还没有解决问题 我们无法下载许可证 请检查你的网络连接或代理设置 查找方案 有一个方案比较普遍 1 在VS安装
  • brk(), sbrk() 用法详解

    贴上原文地址 好不容易找到了 brk sbrk 改变数据段长度 brk sbrk 的声明如下 include
  • 机器学习实验 - MeanShift聚类

    目录 一 报告摘要 1 1 实验要求 1 2 实验思路 1 3 实验结论 二 实验内容 2 1 方法介绍 2 2 实验细节 2 2 1 实验环境 2 2 2 实验过程 2 2 3 实验与理论内容的不同点 2 3 实验数据介绍 2 4 评价指
  • Spring5 框架 详解 (一) ---- IOC控制反转

    Spring5 框架 spring 框架概述 IOC 容器 1 什么是 IOC 2 IOC底层原理 IOC 过程 IOC 接口 IOC 操作 Bean 管理 IOC 操作 Bean 管理 xml 注入其他类型属性 IOC 操作 Bean 管
  • PHP底层工作原理

    原文地址 http www cnblogs com phphuaibei archive 2011 09 13 2174927 html 最近搭建服务器 突然感觉lamp之间到底是怎么工作的 或者是怎么联系起来 平时只是写程序 重来没有思考
  • Java中数据类型详解

    文章目录 一 数据类型的作用 二 两种数据类型 1 基本数据类型 1 第一类 整数型 2 第二类 浮点型 3 第三类 布尔型 4 第四类 字符型 2 引用数据类型 1 类 2 数组 3 接口 三 基本数据类型之间的转化 一 数据类型的作用
  • Vue 项目如何实现一个全局菜单搜索框

    个人主页 山山而川 xyj 作者简介 前端领域新星创作者 专注于前端各领域技术 共同学习共同进步 一起加油 系列专栏 Vue 系列 学习格言 与其临渊羡鱼 不如退而结网 目录 前言 一 过滤路由 二 搜索框展示路由 三 雏形出现但有缺陷 四
  • 九宫格选择照片

    一 Adapter public class RecyclerImageAdapter extends RecyclerView Adapter
  • 使用IDEA创建JavaWeb项目

    由于看的视频教程比较老 且开发工具为Eclipse 本人已习惯使用IDEA 在此记录一下创建JavaWeb项目过程 创建一个项目 左侧选择 Java Enterprise 右侧选择 Web Application 这里我输入的项目名字为 F
  • 公开课精华

    本文章总结于大疆前技术总监 目前在卡内基梅隆大学读博的杨硕博士在深蓝学院的关于机器人的带约束轨迹规划的公开课演讲内容 全文约5000字 笔者不是机器人领域的 因此特地去了解了一下杨硕博士 深感佩服 不仅是他的履历 更多的是他关于学术上的至臻
  • 2021-09-15 C++ 继承和多态(虚函数,纯虚函数,虚继承)

    C 继承和多态 虚函数 纯虚函数 虚继承 一 继承 继承的概念 为了代码的复用 保留基类的原始结构 并添加派生类的新成员 继承的本质 代码复用 我们用下图解释下 那么我们这里就可以提出几个问题了 进程的方式有哪些呢 这里有三种继承方式 pu
  • Vue3 实现背景水印功能

    在 web 的世界里 对于图片文档等增加水印处理是十分有必要的 水印的添加根据环境可以分为两大类 前端浏览器环境添加和后端服务环境添加 通过 canvas 创建一张含有水印信息的背景图片 通过 hooks 函数插入到页面中 对外暴露方法 设
  • pnpm安装与卸载

    文章目录 1 安装 1 1 Linux CentOS 1 1 1 使用脚本直接安装 1 2 2 通过npm安装 2 卸载 2 1 移除全局安装的包 2 2 移除pnpm cli 2 2 1 脚本直接安装 2 2 2 使用npm安装 官方文档