0

我是新手 Python 初学者。需要代码帮助以输出我的 Windows 10 机器的 D 驱动器中包含长度超过 250 个字符的文件(子文件夹-> 子文件夹等)的所有文件夹。

我订阅了一个非常流行的云备份提供商的云备份,它有 250 个字符的文件路径长度限制。因此,它会自动排除所有长度超过 250 个字符的文件。因此,如果我得到几行代码输出以下内容,那将非常有帮助:

输出 -> D 盘中所有包含长度超过 250 个字符的文件的根文件夹,以便我可以专门缩短这些文件夹的长度。我有 5 TB 数据,所以很明显这不是手动任务。

感谢您的理解。

4

1 回答 1

0

由于您已经在 Windows 上,所以我可以想出一个小脚本:

创建一个批处理文件并将以下代码放入其中(script.bat):

@echo off
setlocal EnableExtensions DisableDelayedExpansion
SET /P var=Enter max char:
(for /r %%I in (*) do (
  set "fn=%%~nI"
  if not defined fn set "fn=%%~xI"
  setlocal EnableDelayedExpansion
  if not "!fn:~%var%!" == "" echo %%~fnxI
endlocal
))>output.txt
endlocal

脚步:

1)运行这个批处理文件。2)它将要求允许的最大字符数,在您的情况下插入 256。

结果: 将在您的工作目录中生成 output.txt,其中包含大于提供的输入字符的文件名列表。

您可以根据要求进一步修改脚本。可以参考:https ://ss64.com/nt/for_d.html

于 2019-12-22T05:45:27.797 回答