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
相关推荐
Moment2 小时前
别再让 JavaScript 抢 CSS 的活儿了,css原生虚拟化来了
前端·javascript·css
CQ_YM2 小时前
Linux进程终止
linux·服务器·前端·进程
晓得迷路了2 小时前
栗子前端技术周刊第 110 期 - shadcn/create、Github 更新 npm 令牌政策、Deno 2.6...
前端·javascript·css
nvd112 小时前
GKE web 应用实现 Auth0 + GitHub OAuth 2.0登录实施指南
前端·github
前端小端长2 小时前
项目里满是if-else?用这5招优化if-else让你的代码清爽到飞起
开发语言·前端·javascript
胡萝卜3.02 小时前
现代C++特性深度探索:模板扩展、类增强、STL更新与Lambda表达式
服务器·开发语言·前端·c++·人工智能·lambda·移动构造和移动赋值
毕设源码-郭学长2 小时前
【开题答辩全过程】以 基于Node.js的医院预约挂号系统为例,包含答辩的问题和答案
node.js
AI_56782 小时前
Vue3组件通信的实战指南
前端·javascript·vue.js
烤麻辣烫2 小时前
黑马大事件学习-16 (前端主页面)
前端·css·vue.js·学习