您的位置:首页 >如何解决Windows系统由于路径过长无法复制 突破260字符路径限制教程
发布于2026-04-27 阅读(0)
扫一扫,手机访问
启用系统长路径支持是根本解法,需通过组策略或注册表设置LongPathsEnabled为1并重启;再辅以PowerShell -LiteralPath复制、符号链接、WSL rsync或简化目录结构等方法绕过260字符限制。

相信不少朋友都遇到过这个令人头疼的提示:当你试图复制或移动一个文件时,系统突然弹窗,告诉你“路径太长”或者“指定的路径或文件名太长”。这背后,其实是Windows系统默认的260字符路径长度限制(MAX_PATH)在作祟。别担心,下面这几个方法,能帮你彻底解决这个问题。
想要一劳永逸?最根本的办法是让Windows内核自己“松绑”。启用LongPathsEnabled这个选项后,系统允许应用程序(包括资源管理器、命令提示符和PowerShell)原生处理最长约32,767个字符的路径,相当于彻底拆除了260字符这堵墙。这个设置需要重启才能生效,也是后续所有操作能够成功的前提。
1、对于Windows专业版、企业版或教育版用户,最方便的方法是使用组策略。按下Win+R,输入gpedit.msc并回车。
2、在组策略编辑器中,依次导航至:计算机配置 → 管理模板 → 系统 → 文件系统。在右侧找到“启用 Win32 长路径”这一项,双击它,选择“已启用”,然后点击“确定”。
3、如果你是家庭版用户,别着急,我们还有注册表这条路。同样按下Win+R,输入regedit打开注册表编辑器。定位到HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlFileSystem这个路径。双击修改LongPathsEnabled的数值数据为1。如果这个键值不存在,就右键新建一个“DWORD(32位)值”,名称必须严格输入为LongPathsEnabled,基数选十进制或十六进制都可以,数值设为1。
4、完成上述任何一项设置后,务必重启你的计算机,让改动生效。
如果来不及重启,或者只想临时解决手头的问题,PowerShell是一个强大的工具。它的-LiteralPath参数非常关键,它能绕过路径字符串的常规解析环节,直接按字面量去匹配目标路径。这样一来,即使路径里包含了方括号、花括号这类容易引起解析混乱的特殊字符,也能被准确识别,再配合Copy-Item命令,复制操作就可靠多了。
1、首先,我们需要以管理员身份运行PowerShell。右键点击“开始”按钮,选择“Windows Terminal(管理员)”或“Windows PowerShell(管理员)”。
2、在打开的窗口中,输入类似这样的命令:Copy-Item -LiteralPath "C:erylongpathosource.txt" -Destination "D:shortdest.txt" -Force。记得把引号里的源路径和目标路径替换成你实际要操作的绝对路径。这里有个细节:源路径必须包含盘符(如C:),而目标路径则需要确保其父目录已经存在。
3、按下Enter键执行命令。如果目标路径本身也很长,一个实用的技巧是:先把目标设为盘符根目录下的一个短路径(比如D:),复制过去之后,再逐步移动到最终位置。
这个方法比较巧妙,它不修改系统底层的设置,而是通过“创建快捷入口”的方式,把深不见底的路径“变短”。资源管理器在操作时,计算的路径长度会大幅缩减,特别适合临时复制或者需要频繁访问的场景。
1、假设你要操作的文件位于本地一个非常深的目录里,比如C:UsersADocumentsProjectsrclibutilsdeepestedile.txt。我们先以管理员身份打开CMD或PowerShell。
2、执行创建符号链接的命令:mklink /D C:ShortRef "C:UsersADocumentsProjectsrclibutilsdeepested"。这行命令会在C盘根目录创建一个名为ShortRef的目录链接,它直接指向那个深层的原始文件夹。
3、现在,打开资源管理器,直接访问C:ShortRef,你会发现里面的文件和原文件夹一模一样。这时,你就可以像操作普通文件夹一样,轻松选中并复制其中的文件到任何地方了。
4、如果要操作的是网络路径(比如群晖NAS的SMB共享里的深层文件夹),我们可以用映射网络驱动器的方法。运行命令:net use Z: "\NAS_IPsharedeepestedpath" /persistent:yes。之后,你就可以通过Z:ile.txt这样简短的路径来访问和复制文件了。
这招可以说是“降维打击”。WSL运行在Linux内核之上,完全不受Windows那个MAX_PATH限制的约束,可以原生处理任意长度的路径。对于那些嵌套极深、或者包含复杂Unicode字符和特殊字符的路径,这个方法尤其好用,而且不需要重启电脑或修改任何系统策略。
1、首先,确保你的电脑已经安装了WSL。如果还没装,可以在PowerShell里执行wsl --install来完成默认安装。
2、启动WSL终端(比如Ubuntu)。为了获得更强大的复制功能,建议先安装rsync工具。对于Ubuntu发行版,可以执行:sudo apt update && sudo apt install -y rsync。
3、WSL会自动将你的Windows磁盘挂载到Linux系统下。通常,C盘对应/mnt/c/,D盘对应/mnt/d/,以此类推。所以,你的Windows路径C:erylongpathsrc,在WSL里就变成了/mnt/c/very/long/path/src。
4、最后,执行复制命令:rsync -a v "/mnt/c/very/long/path/src/" "/mnt/d/short/dest/"。注意,目标盘符(如D盘)也需要在WSL中确认其挂载点。
说到底,最好的防御就是进攻。与其每次都和超长路径斗智斗勇,不如从源头上优化文件的存放结构。通过缩短项目根目录的深度、精简关键子目录的命名,让完整路径自然落在安全范围内。这不仅降低了对系统级修改的依赖,从长远看,也大大提升了项目的可维护性。
1、举个例子,把原本放在C:UsersNameDocumentsGitHubmy-projectendorpackagesrchelperutil.php这么深位置的项目,迁移到一个更浅的目录,比如C:pmppshuutil.php(这里用单字母目录名来极大缩短路径)。
2、迁移后,直接在资源管理器的地址栏输入新路径并回车,确认可以正常访问所有文件。
3、接下来的操作就回归简单了:选中目标文件,按Ctrl+C复制,然后导航到目标位置,按Ctrl+V粘贴即可。
4、如果涉及到开发环境(比如使用Composer的PHP项目),还可以同步调整配置来压缩路径。在项目目录下执行:composer config vendor-dir "v"(仅本项目生效),或者在全局执行:composer config --global cache-dir "C:/c",这样能进一步减少依赖包的路径层级。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
4
5
6
7
8
9