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
相关推荐
子兮曰1 天前
jev-ultrafast 深度解析:7 秒订机票的浏览器 Agent 是如何炼成的
前端·后端·agent
子兮曰1 天前
Jev 爆发一周:7 秒 Agent 背后的 System One 生态与三场争议
前端·后端·ai编程
前端小万1 天前
写公众号赚了 3000 块后,我做了一款叫 "一键成稿" 的软件
前端·微信小程序
爱勇宝1 天前
ZCode 开源 24 小时:一份没有历史的账本,回答不了"有没有偷代码"
前端·后端·chatglm (智谱)
三十而立洋1 天前
Cookie 详解:从产生到安全,一次讲透
前端·javascript
卡布鲁1 天前
把一个 Vite + Vue3 应用塞进 qiankun (React + Umi3) 主站:十个坑的复盘
前端·javascript·react.js
汉堡大王95271 天前
Jev:不是聊天机器人, 而是一个智能 if 语句
前端·人工智能·后端
梦想很大很大1 天前
从运行事实到回归证据:Workrun 的 Telemetry 与 Evaluation 实践
前端·人工智能·后端
计算机魔术师1 天前
Meta Muse agent 接入 Shopify 的 Shop Pay 实现代理式购物
前端
沙蒿同学1 天前
我用 Go 搭了一条 AI Agent 流水线:从 1 张商品图到一整套淘宝详情页
前端·javascript·后端