Linux下npm怎么用?新手入门详细操作指南

在Linux系统中,npm(Node Package Manager)是Node.js的包管理工具,用于安装、更新、卸载Node.js模块及管理项目依赖,以下是Linux下使用npm的详细步骤和操作指南。

linux下如何使用npm

安装Node.js和npm

npm随Node.js一起安装,因此需先安装Node.js,不同Linux发行版的安装方式略有不同:

使用系统包管理器安装(适用于快速安装,但版本可能较旧)

  • Ubuntu/Debian系统
    更新包列表后安装Node.js和npm:

    sudo apt update
    sudo apt install nodejs npm
  • CentOS/RHEL系统
    使用yum或dnf安装(CentOS 7及以下需先安装EPEL仓库):

    sudo yum install nodejs npm  # CentOS 7及以下
    sudo dnf install nodejs npm  # CentOS 8及以上

使用nvm(Node Version Manager)安装(推荐,可管理多版本Node.js)

nvm允许安装和切换Node.js多个版本,避免权限问题:

  • 安装nvm:
    curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
  • 加载nvm:
    export NVM_DIR="$HOME/.nvm"
    [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
    [ -s "$NVM_DIR/bash_completion" ] && . "$NVM_DIR/bash_completion"
  • 安装最新LTS版本的Node.js(包含npm):
    nvm install --lts

验证安装

安装完成后,检查版本号确认是否成功:

node -v  # 显示Node.js版本,如v18.17.0
npm -v   # 显示npm版本,如9.6.7
安装方式 优点 缺点 适用场景
系统包管理器 简单快速,依赖系统包管理 版本可能较旧,权限问题 快速体验或旧版需求
nvm 可管理多版本,避免权限问题 需手动配置环境变量 开发环境,多版本需求

npm基本使用命令

npm的核心功能是管理项目依赖,常用命令如下:

linux下如何使用npm

安装包

  • 本地安装(安装到项目目录,依赖写入package.jsondependencies
    npm install <package-name>  # 简写:npm i <package-name>
    npm install                 # 安装package.json中所有依赖
  • 全局安装(安装到系统目录,需sudo,通常用于CLI工具)
    sudo npm install -g <package-name>  # 简写:sudo npm i -g <package-name>
  • 开发依赖(安装到devDependencies,仅在开发环境使用)
    npm install -D <package-name>  # 简写:npm i -D <package-name>

卸载包

  • 卸载本地包
    npm uninstall <package-name>
  • 卸载全局包
    sudo npm uninstall -g <package-name>

更新包

  • 更新本地包到最新版本
    npm update <package-name>
  • 更新全局包
    sudo npm update -g <package-name>
  • 更新所有包
    npm update

查看已安装包

  • 查看本地安装的包及依赖树
    npm list
    npm list --depth=0  # 只显示直接依赖
  • 查看全局安装的包
    npm list -g
命令 简写 说明
npm install npm i 安装package.json中所有依赖
npm install

npm i 本地安装指定包
npm install -g

npm i -g 全局安装指定包
npm uninstall

npm un 卸载本地包
npm update

npm up 更新本地包
npm list npm ls 查看本地依赖树

npm配置与管理

设置镜像源(国内用户推荐)

默认npm源访问较慢,可切换为国内镜像(如淘宝npm):

npm config set registry https://registry.npmmirror.com  # 设置镜像源
npm config get registry  # 验证镜像源是否生效

配置用户信息

发布包到npm仓库时需配置用户名和邮箱:

npm config set username <your-username>
npm config set email <your-email>

缓存管理

npm会缓存已下载的包,可通过以下命令管理缓存:

npm cache clean --force  # 清空缓存(慎用,可能导致重复下载)
npm cache verify         # 检查并清理损坏的缓存

注意事项

  1. 避免全局使用sudo:全局安装可能导致权限问题,推荐使用nvm管理Node.js版本,npm默认安装在用户目录下,无需sudo。
  2. 使用package-lock.json:npm会自动生成package-lock.json,锁定依赖版本,确保团队开发环境一致。
  3. 修改npm默认目录:若需自定义全局安装目录,可通过以下命令配置:
    npm config set prefix '~/.npm-global'  # 设置全局安装目录
    export PATH=~/.npm-global/bin:$PATH    # 将目录添加到PATH环境变量

FAQs

问题1:npm install时报错EACCES: permission denied怎么办?
解答:该错误通常是由于尝试在全局目录(如/usr/local)写入文件导致,解决方法有两种:

linux下如何使用npm

  • 方法1(推荐):使用nvm管理Node.js版本,npm会安装在用户目录(如~/.nvm/versions/node/v18.17.0),无需sudo即可全局安装。
  • 方法2:配置npm全局安装目录到用户目录(如~/.npm-global),并添加到PATH环境变量(参考“注意事项”第3点)。

问题2:如何查看npm包的详细信息(如版本、依赖、作者等)?
解答:使用npm view命令可查看包的详细信息,常用参数如下:

  • 查看最新版本:npm view <package-name> version
  • 查看所有可用版本:npm view <package-name> versions
  • 查看依赖信息:npm view <package-name> dependencies
  • 查看作者信息:npm view <package-name> author
    查看Express框架的最新版本:npm view express version

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/34932.html

(0)
酷番叔酷番叔
上一篇 2025年10月3日 08:08
下一篇 2025年10月3日 08:21

相关推荐

  • Linux如何查服务器型号?5种方法各发行版通用

    使用 dmidecode 命令(推荐)原理:读取DMI(桌面管理接口)硬件信息,最权威,步骤:sudo dmidecode -t system | grep -E "Manufacturer|Product Name|Serial Number"输出示例:Manufacturer: Dell……

    2025年7月28日
    21700
  • linux如何mkdir

    Linux中,使用mkdir命令创建目录,mkdir 目录名。

    2025年8月10日
    15600
  • Linux如何查看光驱信息?,或,各Linux系统怎么检测光驱?

    命令行方法(推荐)使用 lsblk 命令这是最直观的方法,可列出所有块设备(包括光驱):lsblk输出示例: NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTsr0 11:0 1 1024M 0 rom /run/media/user/CDROMsr0 或 cdrom 表示光驱设备……

    2025年6月15日
    24400
  • Linux如何通过U盘启动进入PE系统?

    在Linux系统中制作并从U盘启动PE系统,主要涉及准备工作、启动盘制作、BIOS设置及启动操作等步骤,以下是详细流程及注意事项,帮助用户顺利完成从U盘PE启动的操作,准备工作在开始操作前,需确保以下物品和条件准备就绪:PE镜像文件:下载主流PE工具的ISO镜像,如微PE(WePE)、WinPE Deepin等……

    2025年10月2日
    19000
  • Linux模糊查找文件有哪些高效方法?

    核心工具与命令find 命令(最强大灵活)find [路径] [选项] [表达式]按文件名模糊匹配-iname(忽略大小写)和 -name(区分大小写):find /home -iname "*.jpg" # 查找 /home 下所有 JPG 文件(不区分大小写)find /var/log……

    2025年7月24日
    17300

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信