Определить корневые папки, в которых есть файлы длиной более 250 символов?

Я новичок в Python. Нужна помощь с кодом для вывода всех папок на моем диске D моей машины с Windows 10, в которых есть файлы (подпапки -> подпапки и т. Д.), Длина которых превышает 250 символов.

Я подписался на облачное резервное копирование очень популярного поставщика облачного резервного копирования, который имеет ограничение на длину пути к файлу 250 символов. Таким образом, он автоматически исключает все файлы, длина которых превышает 250 символов. Итак, было бы очень полезно, если бы я получил несколько строк кода, которые выводят следующее:

Вывод -> Все корневые папки на диске D, в которых есть файлы длиной более 250 символов, так что я могу конкретно сократить длину этих папок. У меня 5 ТБ данных, поэтому очевидно, что это не ручная задача.

Спасибо за понимание.

1 ответ

Поскольку вы уже находитесь в 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

Другие вопросы по тегам