如何修复Windows中的“文件名太长”问题

您所在的位置:网站首页 批量重命名的时候无法全部显示 如何修复Windows中的“文件名太长”问题

如何修复Windows中的“文件名太长”问题

2024-07-11 09:47| 来源: 网络整理| 查看: 265

如果您曾经遇到过此问题,那么它对您来说可能是一个简单的修复方法。如果您已经看到此错误两次以上,那么您也知道有时修复它可能是一个复杂的问题。

让我们希望您只遇到简单的修复品种,但我们也会为您准备不太容易的,保证也能正常工作的修复。

目录 为什么文件名长度在 Windows 中甚至是一个问题?轻松解决不太容易的修复使用 PowerShell 移动、删除或复制文件或目录使用 copy-item 复制目录使用 Move-Item 移动目录使用 Remove-Item 删除目录使 Windows 10 接受长文件路径使 Windows 10 家庭版接受长文件路径使 Windows 10 专业版或企业版接受长文件路径就是这样

为什么文件名长度在 Windows 中甚至是一个问题?

长期以来,文件名长度一直是 Windows 等操作系统的一个问题。曾经有一段时间,文件名不能超过 8 个字符加上 3 个字符的文件扩展名。你能做的最好的事情就是像myresume.doc这样的东西。这是文件系统设计所限制的。

随着新版本的 Windows 的问世,情况变得更好了。我们从旧的、有限的文件系统转变为称为新技术文件系统 (NTFS) 的文件系统。NTFS 将我们带到了一个点,文件名的长度可能为 255 个字符,文件路径长度可能高达 32,767 个字符。那么,我们怎么可能拥有太长的文件名呢?

Windows 具有称为系统变量的东西。这些是 Windows 赖以运行的变量,因为 Windows 将始终知道变量的含义及其位置,即使我们到处移动位和字节也是如此。系统变量 MAX_PATH 是将文件名和文件路径限制在 260 个字符以下的变量。

作为一个变量,你会认为我们可以改变它。不,我们不应该。这就像从毛衣里拔出一根线。一旦一个系统变量发生变化,其他系统变量和依赖于它们的组件就会开始瓦解。

那么,我们该如何解决呢?

轻松解决

如果幸运的话,您会收到错误,并确切地知道导致问题的文件名。或者至少在哪里可以找到文件。也许你的文件名看起来像这样:

C:\User\guymc\Documents\My Resumesresumewithanamesolongthatitcausesproblemsandbecomespartofsomeguysarticleonthewebhowdoyoulikemenow.docx

在这种情况下,犯罪者是谁是显而易见的。在 Windows 资源管理器或 Windows 10 中称为文件资源管理器中找到该文件,单击一次,按 F2 重命名它,然后将那个愚蠢的文件名更改为更合理的名称。问题解决了。

不太容易的修复

解决这个问题并不总是那么容易。有时,无论出于何种原因,您都可能无法更改文件或目录的名称。

以下解决方案将为您解决问题。它们并不难做到。

使用 PowerShell 移动、删除或复制文件或目录

有时,在尝试移动、删除或复制文件路径的字符数超过 260 的目录时,会出现错误。

请注意,directory 和 folder 这两个词是可以互换的。今后我们将使用“directory”。以下 PowerShell cmdlet 也可用于文件。

也许文件路径看起来像这样:

C:\Users\guymc\Documents\This\Is\Exactly\The\Precise\Directory\Path\That\I\Need\To\Have\To\Keep\My\Files\Sorted\In\A\Manner\That\Makes\Sense\To\Me\So\Lets\Pretend\This\Is\An\Actual\Filepath\That\You\Might\Also\Have\On\Your\Windows\Computer\And\Not\Over\Think\It\Document.docx

该文件路径的长度为 280 个字符。因此,我们不能使用普通的复制粘贴方法将目录从那里复制到其他地方。我们收到目标路径太长错误。

假设无论出于何种原因,我们无法重命名文件嵌套的目录。我们该怎么办?

打开 PowerShell。如果您尚未使用过 PowerShell,请阅读我们的文章将 PowerShell 用于家庭用户 - 初学者指南。不过,您可以在不阅读本文的情况下执行后续步骤。

当 PowerShell 打开时,你将位于用户目录的根目录下。假设 C:\Users\guymc 是您的用户目录。

名为 This 的目录位于 Documents 目录中。要进入 Documents 目录,我们使用 DOS 命令 cd Documents。

你将看到提示更改为 C:\Users\guymc\Documents。很好。我们正在更接近目录,这将使事情变得更容易。

使用 copy-item 复制目录

我们想将目录 This 及其内容复制到 ThatNewFolder 中。让我们使用带有参数 -Destination 和 -Recurse 的 PowerShell cmdlet Copy-Item。

-Destination 告诉 PowerShell 我们希望副本位于何处。-Recurse 告诉 PowerShell 将其中的所有项目复制到目标。复制将原件保留在原处,并在目的地制作所有新原件。

复制项目 此 -destination ThatNewFolder -递归

使用 Move-Item 移动目录

假设我们要将目录 This 以及其中的所有目录和文件移动到 ThatNewFolder。移动不会将原件留在原位。

我们可以将 PowerShell cmdlet Move-Item 与参数 -Path 和 -Destination 一起使用。-Path 定义我们要移动的项,-Destination 告诉 PowerShell 我们需要它的位置。

该 cmdlet 会将 This 放在 ThatNewFolder 中。它还将移动 This 目录中的所有内容。Move-Item 可用于移动文件或目录,无论文件路径或文件名长度如何,它都可以工作。

move-item -path 此 -destination ThatNewFolder

要确保它正常工作,请使用 cd ThatNewFolder 命令进入 ThatNewFolder。然后使用 dir 命令列出 ThatNewFolder 中的目录。您将看到“此目录”位于其中。

使用 Remove-Item 删除目录

如果要删除 This 目录及其中的所有内容,请使用 Remove-Item cmdlet。

Remove-Item cmdlet 具有一些内置安全性,因此很难删除包含内容的目录。在我们的示例中,我们知道我们想要删除所有内容,因此我们将使用参数 -Recurse 让它删除里面的所有内容,并使用参数 -Force 让它这样做,而不问我们是否确定里面的每个项目。

请注意!以这种方式恢复已删除的任何内容将非常困难。您可以尝试如何恢复意外删除的文件中的方法,但不要期望太多。

remove-item this -递归 -force

您可以再次使用 dir 命令来确保它消失了。

使 Windows 10 接受长文件路径

如果您知道将重复使用长文件路径和长文件名,则更容易使 Windows 为您工作。每天使用 PowerShell 完成工作是没有意义的。

我们有两种方法可以做到这一点。一个适用于 Windows 10 家庭版用户,另一个适用于 Windows 10 专业版或企业版用户。这些方法可能适用于 Windows 8.1 或更早版本,但我们不能保证。

使 Windows 10 家庭版接受长文件路径

要使 Windows 10 家庭版接受长文件路径,我们需要打开注册表编辑器。如果您以前没有使用过注册表编辑器,请谨慎使用。意外删除或更改此处的内容可能会使 Windows 完全停止工作。

在进行任何更改之前,请务必备份注册表。在我们的备份和还原 Windows 注册表的终极指南中了解您需要了解的所有信息。

打开注册表编辑器并进行备份后,导航到位置 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem 并找到注册表项 LongPathsEnabled。

双击 LongPathsEnabled。在“数值数据:”字段中,确保数字 1 位于其中。单击“确定”提交更改。

退出注册表编辑器,您现在应该能够使用疯狂的长文件路径。

使 Windows 10 专业版或企业版接受长文件路径

若要允许 Windows 10 专业版或企业版使用长文件路径,我们将使用组策略编辑器。它是一种工具,允许我们设置有关Windows如何在计算机和用户级别运行的策略。

我们有几篇关于使用组策略执行禁用或启用 Internet Explorer 选项或向登录屏幕添加消息等操作的文章。

通过转到“开始”菜单并键入 gpedit 来打开组策略编辑器。顶部结果应为“编辑组策略”。双击它。

组策略编辑器打开后,导航到“计算机配置”>“管理模板”>“系统>文件系统”。在那里,你将看到“启用 Win32 长路径”策略。

双击它以编辑策略设置。将其从“已禁用”更改为“已启用”,然后单击“确定”按钮提交更改。

该政策可能不会立即生效。但是,您可以强制更新组策略。

就是这样

还有一些其他方法可以解决长文件名和文件路径,但我们在这里介绍的是最简单、最有效的方法。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3