cmd powershell svm nodejs npm

一、cmd 和 powershell

  1. cmd:基于旧的 MS-DOS 命令接口,使用批处理语言(Batch)
  2. powershell:基于 .NET 框架,使用 PowerShell 脚本语言(基于 AST,更强大)
  3. 一句话简单总结:CMD 是基础,PowerShell 是进阶。如果你只是偶尔使用命令行,CMD 足够;但如果你想管理 Windows 系统、自动化任务或进行开发,PowerShell 是更强大、更安全的选择。

二:nvm、nodejs、npm

  1. Nvm:
    nvm官方网站链接
    nvm 是 Node Version Manager 的缩写。它是一个工具,用于方便地在你的计算机上安装和切换不同版本的 Node.js(以及通常也包含 npm)。
  • 核心功能:
    安装多个 Node.js 版本: 不同的项目可能需要不同版本的 Node.js,nvm 允许你轻松安装它们。
    在不同版本之间切换: 只需一个命令,就可以切换当前项目使用的 Node.js 版本。
    管理 Node.js 和 npm 的环境: 通常 nvm 安装的 Node.js 和 npm 是隔离的,不会互相干扰。
  • 作用:
    解决了 Node.js 版本管理的痛点,避免了因版本冲突导致的开发问题,提高了开发效率和环境的可移植性。
  • 比喻:
    就像一个智能的车库和管理软件。它管理着你的"汽车"(Node.js 版本),让你可以方便地选择使用哪辆"车"(哪个版本)来开(开发)。
  1. Node.js
    nodejs官方网站链接
    nodejs是一个免费、开源、跨平台的 JavaScript 运行时环境,它让开发人员能够创建服务器、 Web 应用、命令行工具和脚本
  • 核心功能:
    它包含了一个 JavaScript 引擎(如 V8,Chrome 的引擎)和大量的内置模块(如用于处理文件系统、网络请求、事件处理等的模块)。
  • 作用:
    提供了一个平台,让你可以使用 JavaScript 来构建服务器端应用程序、命令行工具、桌面应用(通过像 Electron 这样的框架)等。
  • 比喻:
    就像汽车本身。你需要一个引擎(JavaScript)和底盘(Node.js 提供的基础)才能让汽车(程序)运行。
  1. Npm
    npm 是 Node.js 的包管理器。它是一个命令行工具,用于安装、更新、卸载和管理 Node.js 应用程序及其依赖项(即第三方库)。
  • 核心功能:
    安装 Node.js 包: 从一个巨大的在线仓库(名为 npm registry)下载并安装代码库。
    管理依赖关系: package.json 文件记录了项目依赖哪些包以及需要哪些版本。npm install 会读取这个文件并安装所有依赖。
    脚本执行: npm 可以在 package.json 中定义并运行脚本(如 npm start 启动应用,npm test 运行测试)。
  • 作用:
    提供了一种标准化的方式来获取和管理 JavaScript 库,极大地促进了代码的复用和协作。它也是 Node.js 应用程序的标准组成部分。
  • 比喻:
    就像汽车的加油站、维修站和零部件商店。你可以在上面加油(安装包)、修理(管理依赖)、获取配件(安装特定库)。
  • npm和node版本是相互对应的,这个在node官网里找到某一个版本可以就可以查看相应所需的npm版本。
  1. 总结:
  • Node.js 是运行 JavaScript 代码的基础平台。
  • npm 是 Node.js 的包管理工具,用于获取和管理第三方 JavaScript 库。
  • nvm 是一个辅助工具,用于方便地安装、切换和管理不同版本的 Node.js(通常也管理对应的 npm 版本)。

三、相应指令
在这里插入代码片windows 端编译运行C/C++的程序需要一套集成开发环境,这里可以使用MinGWhttps://nuwen.net/mingw.html,选择自己需要的安装包安装。

cpp 复制代码
//下载并安装好nvm

//-------打开powershell进行如下操作------------

nvm --version                        //查看nvm版本

nvm install node                     //安装最新 LTS 版本
nvm install 25.2.1                   //安装指定版本(例如 25.2.1)
nvm install --lts                    //安装特定版本并设为默认

nvm list                             //列出已安装的版本
nvm use 25.2.1                       //切换到指定版本
nvm uninstall 14.20.1                //卸载指定版本(该指令作为补充指令,此处不执行)

node -v                             //查看刚刚安装的node版本
npm -v                              //查看刚刚安装的node自带安装的npm版本,报错npm : 无法加载文件 C:\nvm4w\nodejs\npm.ps1,因为在此系统上禁止运行脚本。
//这是因为powershell的安全限制更严格,有执行策略防止恶意脚本运行,使用Set-ExecutionPolicy控制脚本执行权限,默认不允许本地脚本执行。
//一般遇到推荐直接将powershell权限进行更改,但我目前还不想更改,所以我就直接在cmd里执行npm -v里查看了。

//更改powershell权限的方法
方法 1:临时修改执行策略(重启后失效)
以管理员身份打开 PowerShell:
在 Windows 搜索栏中输入 "PowerShell",右键点击 "Windows PowerShell",选择 "以管理员身份运行",运行以下命令:

# 查看当前执行策略
Get-ExecutionPolicy
# 临时修改为允许所有脚本(仅此会话有效)
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Unrestricted

测试 npm 命令:
npm -v

完成后恢复执行策略(建议操作):
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned

方法 2:永久修改执行策略(推荐)
打开 PowerShell 并运行:
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser -Force

确认更改:
Get-ExecutionPolicy -Scope CurrentUser
相关推荐
还是大剑师兰特14 分钟前
Stats.js 插件详解及示例(完全攻略)
前端·大剑师·stats
前端小超超15 分钟前
Vue计算属性computed:可写与只读的区别
前端·javascript·vue.js
IT_陈寒1 小时前
SpringBoot实战:3个隐藏技巧让你的应用性能飙升50%
前端·人工智能·后端
weixin199701080161 小时前
唯品会商品详情页前端性能优化实战
前端·性能优化
爱学习的程序媛1 小时前
【Web前端】Pinia状态管理详解
前端·vue.js·typescript
爱学习的程序媛1 小时前
“数字孪生”详解与前端技术栈
前端·人工智能·计算机视觉·智慧城市·信息与通信
海石1 小时前
微信小程序开发02:原始人也能看懂的着色器与视频处理
前端·微信小程序·视频编码
程序员Sunday1 小时前
Claude Code 生态爆发:5个必知的新工具
前端·人工智能·后端
ChoSeitaku2 小时前
NO.2|proto3语法|消息类型|通讯录|文件读取|enum类型
java·服务器·前端
小J听不清2 小时前
CSS 边框(border)全解析:样式 / 宽度 / 颜色 / 方向取值
前端·javascript·css·html·css3