- 选择系统
- 复制到剪贴板
- 打开 PowerShell 运行
第一条命令:
当系统上没fnm
的情况下:
- 会先下载
fnm
,下载完成之后 - 第二条命令会执行出错,重新打开PowerShell 窗口就可以了
- 运行命令:
fnm --version
确认是否安装成功 - 不成功就重新安装一下,运行命令:
winget install Schniz.fnm
- 然后执行第二条命令
第二个命令:
fnm
只要安装好,这个几户不会有问题- 然后执行第三个命令
第三个命令:
- 运行命令:
fnm list
,应该会打印node.js版本号 - 如果没打印,那就再执行第二条命令
- 运行命令:
node -v
- 如果打印node.js版本号,就一切大吉,但似乎不会
让 fnm 每次打开 PowerShell 都生效:
让 fnm 每次打开 PowerShell 都生效,需要把 fnm env 配置写入 PowerShell 配置文件 $PROFILE
- 检查 $PROFILE 文件是否存在
- 运行命令:
Test-Path $PROFILE
- 如果返回
false
说明$PROFILE
文件不存在 - 运行命令创建文件:
New-Item -Path $PROFILE -ItemType File -Force
- 运行命令:
- 添加 fnm env 到 $PROFILE
fnm env --shell=powershell | Out-String | Add-Content -Path $PROFILE
- 关闭 PowerShell,再次打开
- 运行命令:
fnm use 22
和node -v
,如果node -v
能正确显示版本号就成功了
- 运行命令:
如果新打开一个PowerShell
有红色字体警告信息:
类似这样:
C:\Users\win\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1,因为在此系统上禁止运行脚本
。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。
所在位置 行:1 字符: 3
+ . 'C:\Users\win\Documents\WindowsPowerShell\Microsoft.PowerShell_prof ...
是因为PowerShell 由于 执行策略 限制,禁止运行脚本(ps1 文件)。这在 Windows 11 上默认是为了安全防止运行未签名的脚本
解决:
-
运行命令:
Get-ExecutionPolicy -List
- 如果打印结果如下所示
- 如果打印结果如下所示
-
运行命令:
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
-
运行命令:
Set-ExecutionPolicy RemoteSigned -Scope LocalMachine
在验证一下: -
Get-ExecutionPolicy -List
-
关闭 PowerShell,重新打开,然后运行:
. $PROFILE
fnm use 22
node -v
如果 node -v 能正确显示版本号,说明 fnm 运行成功!