当前位置: 首页 > news >正文

npm常用命令详解

npm(Node Package Manager)是Node.js的包管理器,它提供了大量的命令来安装、管理、发布Node.js模块和包。以下是npm常用命令的详解及示例:

1. 查看npm版本

命令:npm -v

示例:npm -v 将输出当前安装的npm版本号。

2. 升级npm

命令:npm install npm@latest -g

示例:npm install npm@latest -g 将升级npm到最新版本。

3. 查看帮助

命令:npm help <command>

示例:npm help install 将显示install命令的详细帮助信息。

4. 初始化项目

命令:npm init

示例:运行npm init将引导你创建一个新的package.json文件,用于记录项目的元数据和依赖信息。

5. 安装模块

命令:npm install <package-name>

示例:npm install express 将安装名为express的Node.js模块。

6. 安装开发依赖

命令:npm install <package-name> --save-dev 或 npm install <package-name> -D

示例:npm install mocha -D 将安装mocha作为项目的开发依赖。

7. 查看已安装的模块

命令:npm list 或 npm ls

示例:npm list 将列出当前目录下已安装的所有Node.js模块。

8. 查看全局安装的模块

命令:npm list -g

示例:npm list -g 将列出全局安装的所有Node.js模块。

9. 更新模块

命令:npm update <package-name>

示例:npm update express 将更新express模块到最新版本。

10. 卸载模块

命令:npm uninstall <package-name>

示例:npm uninstall express 将卸载express模块。

11. 查看模块版本

命令:npm view <package-name> version

示例:npm view express version 将显示express模块的当前版本号。

12. 设置npm仓库镜像

命令:npm config set registry <url>

示例:npm config set registry https://registry.npm.taobao.org 将设置npm的仓库镜像为淘宝的npm镜像。

13. 发布模块

命令:npm publish

示例:在项目的根目录下运行npm publish将发布当前项目到npm仓库(前提是你已经登录并且满足了发布条件)。

14. 运行脚本

命令:npm run <script-name>

示例:在package.json中定义了"start": "node app.js",则运行npm run start将执行node app.js

15. 查看npm配置

命令:npm config list

示例:npm config list 将显示当前npm的所有配置信息。

16. 搜索npm仓库中的包

命令:npm search <关键词>

示例:npm search express 将在npm仓库中搜索包含“express”关键词的包。

17. 查看包的详细信息

命令:npm view <包名>

示例:npm view express 将显示“express”包的详细信息,包括版本号、描述、依赖等。

18. 设置npm的访问级别

命令:npm access <level> <包名>

示例:npm access public my-package 将设置“my-package”包的访问级别为公开。

19. 登录和退出npm

命令:npm login 和 npm logout

示例:npm login 会提示你输入npm的用户名、密码和邮箱,用于登录npm账户;npm logout 则用于退出登录状态。

20. 为包添加或修改标签

命令:npm dist-tag add <tag> <version> 和 npm dist-tag rm <tag>

示例:npm dist-tag add latest 1.0.0 将为“my-package”包的1.0.0版本添加一个名为“latest”的标签;npm dist-tag rm latest 则将删除该标签。

21. 查看npm的全局配置路径

命令:npm config get prefix

示例:npm config get prefix 将显示npm的全局配置路径,通常用于存放全局安装的包。

22. 清理npm缓存

命令:npm cache clean --force

示例:npm cache clean --force 将清理npm的缓存,有助于解决某些安装问题。注意,使用--force选项会强制清理缓存,可能导致数据丢失,请谨慎使用。

23. 配置npm代理

命令:npm config set proxy <代理地址> 和 npm config set https-proxy <代理地址>

示例:如果你的网络环境需要通过代理服务器访问外部资源,你可以使用这些命令来设置npm的代理。

24. 查看npm的当前配置

命令:npm config list

示例:npm config list 将显示 npm 的所有配置选项及其当前值。

25. 设置npm的配置项

命令:npm config set <key> <value>

示例:npm config set registry https://registry.npmjs.org/ 将设置 npm 的仓库地址为官方地址。

26. 运行脚本中的特定命令

命令:npm run <script>

示例:如果 package.json 文件中有一个名为 start 的脚本,你可以通过 npm run start 来运行它。

27. 列出项目的依赖关系

命令:npm ls

示例:npm ls 会列出项目的所有依赖项及其版本。

28. 查看全局安装的包的路径

命令:npm root -g

示例:npm root -g 会显示全局安装的 Node.js 包的安装路径。

29. 链接本地包到全局

命令:npm link

示例:如果你在本地开发了一个包,并希望将其链接到全局,以便在其他项目中使用,你可以在包的根目录下运行 npm link

30. 解除全局链接的本地包

命令:npm unlink <package-name>

示例:npm unlink my-package 将解除之前通过 npm link 命令链接的全局包。

31. 为npm设置认证令牌

命令:npm config set //registry.npmjs.org/:_authToken <token>

示例:这通常用于在持续集成/持续部署 (CI/CD) 环境中为 npm 设置认证。你需要将 <token> 替换为从 npm 账户获取的认证令牌。

32. 查看npm的日志

命令:npm logs <package-name>

示例:npm logs express 将显示与 express 包相关的 npm 日志。

33. 为npm添加新的仓库源

命令:npm adduser --registry=http://my-registry.example.com

示例:这允许你为特定的 npm 仓库源添加用户认证信息。

34. 更新全局安装的包

命令:npm update -g <package-name>

示例:npm update -g express 将更新全局安装的 express 包到最新版本。

35. 重构项目的 node_modules 目录

命令:npm rebuild

示例:在某些情况下,你可能需要重建项目的依赖项。运行 npm rebuild 可以达到这个目的。

36. 为包设置版本并发布

命令:npm version <newversion> 然后 npm publish

示例:首先运行 npm version 1.0.1 来设置新版本号,然后运行 npm publish 来发布新版本。

37. 批量安装多个包

命令:npm install <package1> <package2> ...

示例:npm install express body-parser 将同时安装 express 和 body-parser 这两个包。

38. 查看项目的依赖树

命令:npm ls --depth=0

示例:这个命令将显示项目的直接依赖,而不包括子依赖。--depth参数用于指定显示的深度。

39. 查看某个包的详细信息

命令:npm info <package-name>

示例:npm info express 将显示express包的详细信息,包括版本、描述、依赖等。

40. 检查项目的依赖项是否过期

命令:npm outdated

示例:运行此命令将列出项目中所有依赖项的最新可用版本,以及当前使用的版本。

41. 在全局范围卸载包

命令:npm uninstall -g <package-name>

示例:npm uninstall -g express 将从全局范围中卸载express包。

42. 为npm设置访问代理

命令:npm config set proxy http://<username>:<password>@<proxy-server-url>:<port>

示例:如果你的网络环境需要通过代理服务器访问外部资源,你可以使用此命令来设置npm的代理。

43. 设置npm仓库的镜像源

命令:npm config set registry <registry-url>

示例:在中国大陆地区,由于网络原因,经常会使用淘宝的npm镜像源。你可以通过此命令来设置淘宝的npm镜像源。

44. 为npm设置HTTPS代理

命令:npm config set https-proxy http://<username>:<password>@<proxy-server-url>:<port>

示例:与设置普通代理类似,如果你的网络环境需要通过HTTPS代理服务器访问外部资源,你可以使用此命令来设置。

45. 查看npm的帮助信息

命令:npm help

除了查看特定命令的帮助(如npm <command> --help),你还可以直接运行npm help来查看npm的总体帮助信息。

46. 批量卸载多个包

命令:npm uninstall <package1> <package2> ...

示例:npm uninstall express body-parser 将同时卸载expressbody-parser这两个包。

相关文章:

npm常用命令详解

npm&#xff08;Node Package Manager&#xff09;是Node.js的包管理器&#xff0c;它提供了大量的命令来安装、管理、发布Node.js模块和包。以下是npm常用命令的详解及示例&#xff1a; 1. 查看npm版本 命令&#xff1a;npm -v 示例&#xff1a;npm -v 将输出当前安装的npm版…...

IPV6协议之RIPNG

目录 前言&#xff1a; 一、RIPNG与RIP的区别 二、如何配置RIPNG 如何解决RIPNG环路问题呢&#xff1f; 控制RIPNG的选路 1、修改RIPNG默认优先级 2.配置接口附加开销值从而干涉RIPNG的选路 RIPNG拓展配置 1.RIPNG的认证 配置RIPNG进程下的IPsec认证&#xff1a; 配…...

JVM垃圾收集器你会选择吗?

目录 一、Serial收集器 二、ParNew收集器 三、Paralle Scavenge 四、Serial Old 五、Parallel Old 六、CMS收集器 6.1 CMS对处理器资源非常敏感 6.2 CMS容易出现浮动垃圾 6.3 产生内存碎片 七、G1 收集器 八、如何选择合适的垃圾收集器 JVM 垃圾收集器是Java虚…...

游戏防沉迷系统相关内容

网站地址&#xff1a;网络游戏防沉迷实名认证系统 PHP代码&#xff1a; 创建对应文件&#xff0c;在需要的位置get传参请求即可&#xff0c;具体参数参考 网络游戏防沉迷实名认证系统接口对接技术规范v2.0 1、上传信息 <?php $url "https://wlc.nppa.gov.cn/test…...

每日OJ题_牛客_JD1 年终奖(动态规划)

目录 牛客_JD1 年终奖 解析代码 牛客_JD1 年终奖 年终奖_牛客题霸_牛客网 解析代码 #include <vector> class Bonus { public: int getMost(vector<vector<int> > board) {int m board.size(), n board[0].size();vector<vector<int>> dp(m…...

深度学习 tablent表格识别实践记录

下载代码&#xff1a;https://github.com/asagar60/TableNet-pytorch 下载模型&#xff1a;https://drive.usercontent.google.com/download?id13eDDMHbxHaeBbkIsQ7RSgyaf6DSx9io1&exportdownload&confirmt&uuid1bf2e85f-5a4f-4ce8-976c-395d865a3c37 原理&#…...

深度学习 线性神经网络(线性回归 从零开始实现)

介绍&#xff1a; 在线性神经网络中&#xff0c;线性回归是一种常见的任务&#xff0c;用于预测一个连续的数值输出。其目标是根据输入特征来拟合一个线性函数&#xff0c;使得预测值与真实值之间的误差最小化。 线性回归的数学表达式为&#xff1a; y w1x1 w2x2 ... wnxn …...

HBase在表操作--显示中文

启动HBase后&#xff0c;Master和RegionServer两个服务器&#xff0c;分别对应进程为HMaster和HRegionServe。&#xff08;可通过jps查看&#xff09; 1.进入表操作 hbase shell 2.查看当前库中存在的表 list 3.查看表中数据&#xff08;注&#xff1a;学习期间可用&#…...

基于BusyBox的imx6ull移植sqlite3到ARM板子上

1.官网下载源码 https://www.sqlite.org/download.html 下载源码解压到本地的linux环境下 2.解压并创建install文件夹 3.使用命令行配置 在解压的文件夹下打开终端&#xff0c;然后输入以下内容&#xff0c;其中arm-linux-gnueabihf是自己的交叉编译器【自己替换】 ./config…...

连续子数组的最大和

问题描述&#xff1a; 输入一个整型数组&#xff0c;数组里有正数也有负数。求连续子数组中的最大和为多少。 举例&#xff1a; 数组&#xff1a;arry{1 , 2 &#xff0c;-5 , 4 , 1 &#xff0c;-2} 输出&#xff1a;5&#xff0c;数组中连续的位置相加最大值为5, 41 方法…...

Photoshop 工具使用详解(全集 · 2024版)

全面介绍 Photoshop 工具箱里的工具&#xff0c;点击下列表格中工具名称或图示&#xff0c;即可查阅工具的使用详解。 移动工具Move Tool移动选区、图层和参考线。画板工具Artboard Tool创建、移动多个画布或调整其大小。moVe快捷键&#xff1a;V 矩形选框工具 Rectangular Mar…...

C++函数返回机制,返回类型

return语句终止当前正在执行的函数并将控制权返回到调用该函数的地方。 return语句有两种形式 return;return expression; 无返回值函数 没有返回值的return语句只能用在返回类型是void的函数中。 返回void的函数不要求必须有return语句&#xff0c;因为这类函数的最后一句…...

[linux] Key is stored in legacy trusted.gpg keyring

修复 Ubuntu 中的 “Key is stored in legacy trusted.gpg keyring” 问题_key is stored in legacy trusted.gpg keyring (/etc/-CSDN博客 复制到trusted.gpd.d 目录中(快速但不优雅的方法) 如果你觉得手动做上面的事情不舒服&#xff0c;那么&#xff0c;你可以忽略这个警告…...

阿里云部署OneApi

基于 Docker 进行部署 # 使用 SQLite 的部署命令&#xff1a; docker run --name one-api -d --restart always -p 3000:3000 -e TZAsia/Shanghai -v /home/ubuntu/data/one-api:/data justsong/one-api # 使用 MySQL 的部署命令&#xff0c;在上面的基础上添加 -e SQL_DSN&qu…...

MapReduce学习问题记录

1、如何跳过对某行数据的处理 第一行数据是字段名不需要处理&#xff0c;我们知道第一行偏移量是0&#xff08;行记录的时候是从数组首地址开始&#xff0c;到了行标识符进行一次计数&#xff0c;这个计数就是行偏移量&#xff0c;从0开始&#xff09;&#xff0c;我们根据偏移…...

Elasticsearch优化

集群配置 1、调整副本数&#xff1a;考虑数据的可用性和读取性能&#xff0c;合理配置分片的副本数。 2、合理配置分片大小(分片的合理容量&#xff1a;10GB-50GB)&#xff1a;避免分片过大&#xff0c;以确保更好的性能和均衡的负载。 3、监控集群状态&#xff1a;使用监控工…...

【Redis知识点总结】(六)——主从同步、哨兵模式、集群

Redis知识点总结&#xff08;六&#xff09;——主从同步、哨兵模式、集群 主从同步哨兵集群 主从同步 redis的主从同步&#xff0c;一般是一个主节点&#xff0c;加上多个从节点。只有主节点可以接收写命令&#xff0c;主节点接收到的写命令&#xff0c;会同步给从节点&#…...

Java面试题:设计一个线程安全的单例模式,并解释其内存占用和垃圾回收机制;使用生产者消费者模式实现一个并发安全的队列;设计一个支持高并发的分布式锁

Java深度面试题&#xff1a;设计模式、内存管理与并发编程的综合考察 随着Java技术的不断发展&#xff0c;对Java开发者的技术要求也在不断提高。设计模式、内存管理、多线程工具类以及并发工具包和框架等都是Java开发者必须掌握的核心知识点。本文将通过三道综合性的面试题&a…...

【硬件设计】以立创EDA举例——持续更新

【硬件设计】以立创EDA举例——持续更新 文章目录 前言立创EDA官网教程一、原理图二、PCB1.布局2.设计规则3.电流与线宽 4.PCB走线5.Polar Si90006.过孔7.铺铜总结 前言 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 立创EDA官网教程 立创EDA使用教程…...

Chain of Note-CoN增强检索增强型语言模型的鲁棒性

Enhancing Robustness in Retrieval-Augmented Language Models 检索增强型语言模型&#xff08;RALMs&#xff09;在大型语言模型的能力上取得了重大进步&#xff0c;特别是在利用外部知识源减少事实性幻觉方面。然而&#xff0c;检索到的信息的可靠性并不总是有保证的。检索…...

变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析

一、变量声明设计&#xff1a;let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性&#xff0c;这种设计体现了语言的核心哲学。以下是深度解析&#xff1a; 1.1 设计理念剖析 安全优先原则&#xff1a;默认不可变强制开发者明确声明意图 let x 5; …...

在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:

在 HarmonyOS 应用开发中&#xff0c;手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力&#xff0c;既支持点击、长按、拖拽等基础单一手势的精细控制&#xff0c;也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档&#xff0c…...

23-Oracle 23 ai 区块链表(Blockchain Table)

小伙伴有没有在金融强合规的领域中遇见&#xff0c;必须要保持数据不可变&#xff0c;管理员都无法修改和留痕的要求。比如医疗的电子病历中&#xff0c;影像检查检验结果不可篡改行的&#xff0c;药品追溯过程中数据只可插入无法删除的特性需求&#xff1b;登录日志、修改日志…...

vue3 定时器-定义全局方法 vue+ts

1.创建ts文件 路径&#xff1a;src/utils/timer.ts 完整代码&#xff1a; import { onUnmounted } from vuetype TimerCallback (...args: any[]) > voidexport function useGlobalTimer() {const timers: Map<number, NodeJS.Timeout> new Map()// 创建定时器con…...

论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一)

宇树机器人多姿态起立控制强化学习框架论文解析 论文解读&#xff1a;交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架&#xff08;一&#xff09; 论文解读&#xff1a;交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化…...

使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台

🎯 使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台 📌 项目背景 随着大语言模型(LLM)的广泛应用,开发者常面临多个挑战: 各大模型(OpenAI、Claude、Gemini、Ollama)接口风格不统一;缺乏一个统一平台进行模型调用与测试;本地模型 Ollama 的集成与前…...

Kafka主题运维全指南:从基础配置到故障处理

#作者&#xff1a;张桐瑞 文章目录 主题日常管理1. 修改主题分区。2. 修改主题级别参数。3. 变更副本数。4. 修改主题限速。5.主题分区迁移。6. 常见主题错误处理常见错误1&#xff1a;主题删除失败。常见错误2&#xff1a;__consumer_offsets占用太多的磁盘。 主题日常管理 …...

Axure 下拉框联动

实现选省、选完省之后选对应省份下的市区...

一些实用的chrome扩展0x01

简介 浏览器扩展程序有助于自动化任务、查找隐藏的漏洞、隐藏自身痕迹。以下列出了一些必备扩展程序&#xff0c;无论是测试应用程序、搜寻漏洞还是收集情报&#xff0c;它们都能提升工作流程。 FoxyProxy 代理管理工具&#xff0c;此扩展简化了使用代理&#xff08;如 Burp…...

链式法则中 复合函数的推导路径 多变量“信息传递路径”

非常好&#xff0c;我们将之前关于偏导数链式法则中不能“约掉”偏导符号的问题&#xff0c;统一使用 二重复合函数&#xff1a; z f ( u ( x , y ) , v ( x , y ) ) \boxed{z f(u(x,y),\ v(x,y))} zf(u(x,y), v(x,y))​ 来全面说明。我们会展示其全微分形式&#xff08;偏导…...