Linux下用nvm管理Node版本:安装、切换与避坑指南
先说个现象很多人在Linux上装Node时都吃过大亏。要么用系统源装了个老旧版本几年都升不上去要么手动解压二进制包最后整个系统里散落着两三个互相打架的node还有干脆每次需要换版本就重新下载安装折腾一下午。如果你也有过这种经历那linux安装nvm这件事就是你要的答案。nvm全称Node Version Manager其实就是一个安装在用户目录下的版本管理工具不占用系统级目录也不需要sudo。它的核心作用就一句话让你在同一台Linux机器上随时安装、切换、回滚不同版本的Node.js互不干扰。不管你是刚接触Linux的新手、被环境搞崩过的全栈开发者还是需要维护多个历史项目的运维nvm都能把这些麻烦事变成两条命令的事。这篇内容我会从安装前需要理解的设计思路讲起再给出完整的安装流程、日常使用命令、常见报错排查和几个进阶技巧。我尽量不绕弯子直接按我自己反复装了几十次的经验来讲该懂的原理和该避开的坑都会提到。1. 安装前先搞清楚nvm到底解决什么问题1.1 为什么不用系统自带的Node或手动下载压缩包先明确一下痛点本身因为很多人其实不清楚自己为什么要装nvm。Linux发行版自带包管理器里的Node版本往往严重滞后。我曾经在某套较新的服务器系统上用默认源装Node装完之后是某个很老的版本连新版LTS的语法特性都不支持。系统为了追求稳定更新节奏天然偏慢等一个项目的依赖要求新版Node时你只能干瞪眼。手动下载官方二进制包也不好受。你确实能解压到 /opt/node 然后改 PATH但问题很快就来了全局安装的包散落在各个版本目录里、升级要手动重来、切换版本要把PATH反复改来改去稍有不慎就把系统环境搞乱。更别提同一时间需要跑两个依赖不同Node版本的项目时基本只能靠虚拟机。nvm的设计就是为了根治这些问题的。它的原理并不复杂把每个版本的Node完整安装到~/.nvm/versions/node/下然后在切换版本时修改当前shell的PATH变量让node和npm指向对应版本的目录。你可以把它理解成一个“书签管理器”——想用哪本书就把书签指向哪一页而每本书都收纳在同一书架上互不影响。还有一个关键点容易被忽略nvm按用户安装不需要root权限也不动系统目录。这意味着你不会因为某次install或update把整个系统的依赖搞坏也不需要每次都sudo提心吊胆地操作。1.2 有哪几种安装方式各自适合谁nvm的安装方式大致有三条路。第一条是用官方安装脚本一条命令完成全部过程。这是最推荐、也最省心的方式适合绝大多数人。脚本会自动把nvm源码下载到~/.nvm并把必要的环境变量写入shell配置文件。第二条是用Git手动克隆仓库。选择这种方式的人通常是想控制安装目录或者在调试某些环境问题。其实官方提供GitHub仓库nvm-sh/nvm直接克隆下来也能用只是少了脚本帮你自动配置那一步。第三条是用发行版包管理器装比如在部分系统的AUR中通过包管理器安装。但这类包通常不是官方维护的版本可能滞后配置路径也和官方nvm不一样后续更新容易出问题。我个人不建议走这条路除非你明确知道自己在做什么。如果你实在拿不定主意就用官方脚本这是最稳的。2. 安装步骤全解脚本安装与手动安装2.1 方案A官方安装脚本推荐先检查环境里有没有curl或wget。这两个是下载工具一般Linux系统都自带不确定的话可以先执行curl --version或wget --version确认。没有装的话先用系统包管理器补齐。推荐用curl执行安装curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash如果没有curl用wget也一样wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash这里我用v0.39.7作为示例版本如果你看到文章时nvm已经发布了更高版本可以去官方releases页面把版本号替换成最新的即可。那么这条命令到底做了什么第一步先把install.sh这个脚本下载下来第二步通过管道交给bash执行。脚本内部会去克隆nvm仓库到~/.nvm然后自动检测你的shell类型把下面几行配置追加到配置文件末尾export NVM_DIR$HOME/.nvm [ -s $NVM_DIR/nvm.sh ] \. $NVM_DIR/nvm.sh [ -s $NVM_DIR/bash_completion ] \. $NVM_DIR/bash_completion第一行把nvm目录设为环境变量后面两行则是加载nvm函数和命令补全脚本。注意第三行的bash_completion只有bash下才有意义zsh用户会得到一个提示让你手动加载其他补全配置但功能上不受影响。脚本输出了 Close and reopen your terminal这类提示时就意味着安装流程已经走完了。2.2 方案B手动下载安装备用方案官方脚本在大多数情况下没问题但偶尔会遇到网络连接失败或脚本下载超时。这种时候可以退一步采用手动安装。先从GitHub的releases页面把最新版本的源码包下载到本地。假设下载的是v0.39.7.tar.gzmkdir -p ~/.nvm cd ~/.nvm tar -xzf ~/下载/v0.39.7.tar.gz mv v0.39.7/* .严格来说nvm并没有规定必须解压到~/.nvm只要目录里含nvm.sh就行但用默认目录是为后续升级和查找方便。接下来手动配置环境变量。用文本编辑器打开~/.bashrc把下面几行加到文件末尾export NVM_DIR$HOME/.nvm [ -s $NVM_DIR/nvm.sh ] \. $NVM_DIR/nvm.sh保存退出后执行source ~/.bashrc让配置立即生效。手动安装多出来的工作就是配置这几行环境变量其他和脚本安装完全一致。2.3 让nvm马上生效的配置技巧脚本或手动安装完成后如果直接在同一个终端窗口输入nvm大概率会提示command not found。这个不是装坏了而是环境变量还没有加载进当前shell。有三个加载办法关闭当前终端重新打开一个新终端窗口让shell重新读取配置文件在现有终端执行source ~/.bashrc对于zsh用户执行source ~/.zshrc我用的是bash但如果你是zsh用户有一个细节要特别留意官方install脚本检测到zsh后会在zshrc里写上类似配置。但如果你同时用tmux多开终端或者系统里存在bash和zsh混用的情况可能出现某个终端能识别nvm、另一个终端不能识别的情况。排查思路通常就是看对应shell的配置文件里有没有加载nvm.sh。验证是否安装成功command -v nvm nvm --version如果第一条命令输出了路径比如nvm第二条输出了版本号那就没问题了。注意切勿使用 sudo 或 root 用户执行nvm命令。nvm是按用户安装的sudo会把它的运行环境变成root的权限上下文它反而找不到~/.nvm这个目录。我在一台服务器上遇到过有人用sudo执行结果系统直接报找不到NVM_DIR的问题。3. 日常使用的核心命令与版本管理工作流3.1 能用得上的命令都在这里nvm安装好之后真正的便利才开始。先把最常用的命令过一遍。nvm ls-remote # 查看远程所有可安装的Node版本 nvm ls-remote --lts # 只看长期维护版本 nvm install 20 # 安装Node 20的最新版本 nvm install --lts # 安装当前最新的LTS版本 nvm use 18 # 切换到Node 18 nvm alias default 20 # 设置默认版本为20 nvm ls # 查看本机已安装的版本列表 nvm current # 查看当前正在使用的版本 nvm uninstall 18 # 卸载某个版本 nvm which 20 # 查看某个版本对应的安装路径这里面有两个细节值得解释。第一个是版本号简写。nvm install 20并不代表只安装20.0.0而是nvm自动去寻找20.x.y里最新可用的版本。同理nvm install 18也能装到18最新的迭代版本。如果某个项目明确要求具体版本比如20.11.1那就写完整的版本号。实际工作中我一般建议尽量用主版本号让nvm自动补齐补丁版本这样既能享受安全和性能修复也尽量少改配置文件。第二个是默认版本的作用。nvm从空状态第一次安装某个Node之后它会自动把它设为默认。但如果之后手动切换过版本重启终端又会回到默认版本。只要你执行过nvm alias default 20每次打开终端都会自动使用20这个默认版本尤其重要。3.2 一套真实的版本切换工作流假设我现在同时维护两个项目一个老项目要求Node 16一个新项目使用Node 20。传统做法可能是在不同终端里反复改PATH非常折磨人。用nvm之后的流程是这样的nvm install 16 nvm install 20 cd 老项目目录 nvm use 16 npm install npm run dev cd 新项目目录 nvm use 20 npm install npm run dev每个项目已经下过的node_modules不会因为切版本就失效只要依赖声明没变通常可以直接复用。这里唯一需要提醒的是全局包的问题当你切到Node 16时npm的全局包列表和Node 20的并不共享。每个版本有自己独立的全局包目录这是nvm的天然隔离机制。如果你希望某个全局工具在所有版本中都可用最简单的办法是分别给每个版本安装同一个包。这个看起来有点烦但反过来想这恰好能避免某些底层二进制工具在新旧版本间冲突的问题。我在处理旧项目的某个原生模块时就遇到过全局包在Node 20下编译过切回Node 16后二进制不兼容直接报段错误后来就是按版本隔离处理才干净的。另外提一句npm镜像配置在国内网络环境下直接使用默认npm源安装依赖有时会慢到怀疑人生。这不在nvm管辖范围但两者经常配合使用推荐在任意版本执行npm config set registry https://registry.npmmirror.com这一条同样只对该Node版本的全局配置生效切到另一个版本后如果也想要需要再执行一遍。3.3 用.nvmrc锁住项目需要的版本如果你在一个团队里工作最头疼的就是有人用了十几年老版本Node有人装了最新版项目一跑就报奇奇怪怪的错。nvm提供了一个非常实用的团队协作方案在项目根目录建一个.nvmrc文件里面只写版本号比如20.11.1然后其他人进入项目后执行nvm usenvm会读取当前目录下的.nvmrc并自动切换对应版本。如果没有安装这个版本它会明确提示你先nvm install。如果再配合一些shell插件比如zsh下的自动切换配置进入目录就能自动切版本几乎不用手动操作。我自己的习惯是.nvmrc里写主版本号比如20而不是20.11.1这种精确值。原因很简单它能保证团队成员装到同一大版本下的最新稳定版少去不少麻烦。如果你的项目对补丁版本有硬性要求那必须锁到精确值自己判断即可。4. 常见问题与排查实录4.1 安装后出现command not found这个问题的出现率最高。先别急着重装按顺序排查。第一步确认nvm目录到底存在不存在ls -la ~/.nvm如果目录不存在说明前面的安装流程根本没成功回到安装步骤重新执行。如果目录存在看配置文件。tail -n 20 ~/.bashrc检查结尾有没有NVM_DIR相关的三行。如果bashrc里没有说明安装脚本在写入配置那一步出了问题手动补上即可。如果bashrc里有内容再看当前终端是否已经加载。普通情况下直接source ~/.bashrc。但有一个坑如果你使用的是zshbashrc里的配置不会自动执行这时候要检查~/.zshrc把同样三行配置复制进去。此外还有一种非交互式环境的场景比如某些CI流程或自动化脚本里执行nvm同样会找不到命令。这是因为非交互shell不加载bashrc。解决办法是在脚本开头显式加载export NVM_DIR$HOME/.nvm [ -s $NVM_DIR/nvm.sh ] \. $NVM_DIR/nvm.sh4.2 下载Node版本时网络失败或一直卡住执行nvm install 20时如果卡了很久或者报Connection timed out问题多数出在node二进制包的下载连接上。node官方nodejs.org的下载域名在某些网络环境下访问不太稳定。nvm支持切换下载镜像源用一个环境变量指向国内镜像就能解决。在bashrc里加一行export NVM_NODEJS_ORG_MIRRORhttps://npmmirror.com/mirrors/node保存后source ~/.bashrc再执行nvm install 20。你会发现下载速度明显不一样了。这个变量会在nvm需要下载Node二进制包时自动替换下载域名不影响其他功能。如果是安装nvm本身时下载脚本卡住那就参考2.2采用手动安装方案不要去依赖单独的脚本。4.3 PATH冲突装了系统Node又用nvm如果之前通过apt或yum装过系统级Node现在又装了nvm可能会遇到一种奇怪的现象明明nvm use 20显示已切换但执行node -v还是系统那个老版本。这个问题的根源是PATH顺序。查看当前PATH环境变量echo $PATH正常情况下nvm切换后新版本路径应该出现在最前面如下面这种结构/home/用户名/.nvm/versions/node/v20.11.1/bin:/usr/bin:/bin:/usr/local/bin如果/usr/bin在nvm路径前面系统就会优先找到/usr/bin/node。用which node可以看出当前实际用的是哪个路径。解决思路有两个方向。一是彻底卸载系统里的Node包diet谨慎操作二是把nvm初始化那段配置放到bashrc最前面。实操中我发现一个细节有些发行版会在/etc/profile.d里提前注入系统路径bashrc里的修改很难覆盖。这时候需要在bashrc里重新挂载PATHexport PATH$HOME/.nvm/versions/node/当前版本/bin:$PATH但这种做法比较笨拙因为切换版本时会失灵。更稳妥的做法是确认nvm配置已经正确加载然后卸载系统级Node让nvm成为唯一的Node来源。4.4 npm内部版本与Node版本不匹配有时候nvm install 16装好之后执行npm -v发现npm还是旧的甚至报不兼容。这种情况通常发生在某些提前预编译的Node二进制里nvm在安装时会跟随版本自动安装对应的npm。处理思路是先查看npm路径which npm正常情况它应该指向~/.nvm/versions/node/v16.x.x/bin/npm。如果指向了其他位置全局PATH污染的老问题又出现了。如果npm路径正确但版本异常可以显式重装对应版本的npmnpm install -g npmlatest注意这会把npm升级到比Node版本兼容范围更高的版本反而可能带来问题。更推荐的方式是让nvm重装一次Node让内嵌的npm恢复默认nvm uninstall 16 nvm install 16恢复默认后再考虑是否升级npm。4.5 权限、卸载与重装问题nvm不需要sudo如果安装过程或执行过程中遇到EACCES类权限错误大概率是某个目录被root用户写过了导致当前用户无法覆盖。可以用ls -la ~/.nvm检查所有者和权限必要时用sudo chown -R 用户名:用户名 ~/.nvm修正归属。关于彻底卸载nvm我曾经被同事问过。步骤其实简单先移除当前软链指向然后删除目录本身nvm uninstall 你正在使用的版本 rm -rf ~/.nvm再手动清除shell配置文件里关于NVM_DIR的三行配置。如果不清理配置即使目录删了每次打开终端也会报找不到nvm.sh的提示。这个细节不要漏。5. 进阶让nvm融入更多开发场景5.1 编译安装失败时缺少build工具表面上nvm只负责下载和安排路径但有一个隐藏需求会让人措手不及当有些Node版本在旧机器上缺少预编译二进制时nvm会改为源码编译安装。这时候如果系统没有编译器安装就会在编译环节报错。报错信息通常会带python、make或g相关关键词。不同发行版补依赖的方式不一样。以常见的Debian系为例可以在系统包管理器里安装一组编译工具sudo apt update sudo apt install build-essential python3Red Hat系则对应sudo yum groupinstall Development Tools要不要提前装我的经验是现在大部分新版本Node都有预编译包不需要主动装。但如果你要装一些特别老的版本比如v4、v6这种建议提前把编译工具准备好免得安装中途卡到让人抓狂。5.2 在IDE和CI里使用nvm写代码时用的VS Code或JetBrains系IDE默认会在打开项目时读取shell配置。如果IDE内置终端已经能正常执行nvm use那就没什么问题。但有些服务器上通过SSH远程开发插件打开终端时可能是一个非交互shell需要手动在IDE终端里执行source。CI场景我比较常用的是GitLab CI这类流水线。在job脚本里执行curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash export NVM_DIR$HOME/.nvm [ -s $NVM_DIR/nvm.sh ] \. $NVM_DIR/nvm.sh nvm install 20 nvm use 20 node -v首次执行会比较慢实际上现在的CI环境里我也会选择镜像缓存或者基础镜像里预装nvm省得每次都走全流程。5.3 自动切换版本的zsh配置思路如果在zsh下想省去每次手动nvm use很简单。新建一个shell函数让它检测当前目录有没有.nvmrc有就自动切autoload -U add-zsh-hook load-nvmrc() { local node_version$(nvm version) local nvmrc_path$(nvm_find_nvmrc) if [ -n $nvmrc_path ]; then local nvmrc_node_version$(nvm version $(cat ${nvmrc_path}/.nvmrc)) if [ $nvmrc_node_version ! $node_version ]; then nvm use fi fi } add-zsh-hook chpwd load-nvmrc这段逻辑的核心是nvm_find_nvmrc这个函数它会向上递归查找.nvmrc文件找到后在进入目录时自动执行nvm use。如果看不懂每行细节也没关系抄下来放进zshrc里基本就能用。5.4 定期清理、升级nvm本身nvm本身也是要升级的。官方脚本重新执行一遍就能把旧版本覆盖掉或者直接到~/.nvm目录执行cd ~/.nvm git pull前提是当初安装时保留了Git信息。其实我不太推荐频繁追最新版nvm因为它只负责管理版本不像Node本身那样需要及时更新。半年或一年升级一次就够了重点还是关注Node LTS版本的更新节奏。磁盘空间方面每个Node版本大约占用350MB到400MB如果长期安装四五个版本空间消耗并不小。我在接近满盘的服务器上吃过亏所以建议定期执行nvm ls把不用的旧版本记录列表拉出来然后果断卸载。尤其是那些只为了某个旧项目装过一次、后来再也没碰过的版本该删就删真需要时再花几分钟重装。写在最后的一点实际体会nvm这种工具的妙处不在于它能把安装速度提升多少而在于它把“版本切换”这件事的试错成本降到了几乎为零。以前你不敢随便升级Node怕把正在跑的项目搞崩有了nvm之后你可以大胆尝试新版本项目出问题就切回去整个过程几秒就能完成。这种安全感其实是开发效率里很值钱的一部分。如果你刚在Linux上装完nvm我的建议是不要急着追求各种花哨配置。先把安装、切换、默认版本这三个基础能力用好保证日常项目能顺利跑起来然后再去考虑自动切换、CI集成这些进阶操作。踩过几次环境坑之后你自然会体会到这个工具帮你省下的时间有多可观。

相关新闻

Toluna宣布首席执行官交接计划:创始人Frédéric Charles Petit掌舵25年后将卸任,继续担任董事、高级顾问及股东

Toluna宣布首席执行官交接计划:创始人Frédéric Charles Petit掌舵25年后将卸任,继续担任董事、高级顾问及股东

全球领先的消费者洞察与市场研究技术企业Toluna今日宣布,计划有序推进领导层交接。创始人兼首席执行官Frdric Charles Petit在执掌其创办的公司25年后,拟于继任者获任后卸任首席执行官。此次交接是公司周密规划的继任安排的一部分,旨在确保客…

2026/10/14 2:57:30 阅读更多 →
Sentinel微服务限流降级实战与优化策略

Sentinel微服务限流降级实战与优化策略

1. Sentinel限流降级实战指南在微服务架构中,流量控制和服务稳定性保障是每个开发者必须面对的挑战。去年我们团队重构了一个电商系统,在618大促期间,由于突发流量激增导致核心服务雪崩,那次惨痛经历让我深刻认识到限流降级的重要…

2026/10/14 2:57:30 阅读更多 →
gopsutil 的 Windows 数据类型备忘录:DWORD、SIZE_T 等基础类型的完整释义与 Go 映射实践

gopsutil 的 Windows 数据类型备忘录:DWORD、SIZE_T 等基础类型的完整释义与 Go 映射实践

开发工具运维 【免费下载链接】gopsutil psutil for golang 项目地址: https://gitcode.com/gh_mirrors/go/gopsutil 点击查看 免费下载 导读 本文以 gopsutil 仓库根目录下的 windows_memo.rst 为核心,系统梳理 Windows API 中最常用的 15 种基础数据…

2026/10/14 2:57:30 阅读更多 →

最新新闻

一张图微调YOLOv11:自然栖息地鸟类检测的流程与扩充

一张图微调YOLOv11:自然栖息地鸟类检测的流程与扩充

简介:面向 YOLOv11 模型验证需求,这份精简版鸟类目标检测数据集包含一张真实野外鸟类图像及配套标准标注,可用于快速原型验证、轻量级部署测试与小样本检测基线建立。压缩包共五个文件,包含三张 JPG 图像、一个数据配置文件与一个…

2026/10/14 3:39:38 阅读更多 →
ASP.NET + SQLServer葡萄酒商城源码:从数据库还原到下单事务全攻略

ASP.NET + SQLServer葡萄酒商城源码:从数据库还原到下单事务全攻略

简介:一套基于ASP.NET与SQL Server的葡萄酒网上商城销售系统,面向ASP.NET WebForm学习者、毕业设计学生以及需要搭建在线商城教学演示的开发者。系统围绕普通会员、商户会员和管理员三类角色展开,覆盖商品管理、购物车、订单处理、发货、商户…

2026/10/14 3:39:38 阅读更多 →
LangChain项目代码拆解:Chain、Agent、Memory与Retrieval四大核心组件实战指南

LangChain项目代码拆解:Chain、Agent、Memory与Retrieval四大核心组件实战指南

简介:这是一份LangChain入门与实践的项目代码包,面向正在学习大模型应用开发的Python开发者,旨在帮助读者快速理解LangChain的模块化设计与核心用法。包内共3个文件,包含一个HTML格式的入门讲解页、一个项目运行配置文件以及一个版…

2026/10/14 3:39:38 阅读更多 →
C++学习日记 Day21:C++11(下)lambda表达式和function包装器

C++学习日记 Day21:C++11(下)lambda表达式和function包装器

## 今天学了什么今天学习C11的lambda表达式和function包装器。## 可调用对象概念:在C中有一类对象可像函数一样调用;分类:①函数指针using prt void(*)(int, string); prt f1 fun; f1(1, "函数指针");②仿函数 --有 operator&am…

2026/10/14 3:39:38 阅读更多 →
一人公司AI工作流:6步实现内容生产去体力化

一人公司AI工作流:6步实现内容生产去体力化

1. 一人公司的内容困局与破局思路一个人做内容,最怕的不是没灵感,而是灵感来了却卡在“执行”上。写一篇长文要三小时,做一张配图要半小时,剪一条短视频要一整个下午,排版发布又要来回切换四五个平台。一天下来&#x…

2026/10/14 3:39:38 阅读更多 →
8765平台前后摄DVDD电压不一致排查与修复指南

8765平台前后摄DVDD电压不一致排查与修复指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 3:38:38 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/13 16:22:04 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →