Пакетный скрипт для перемещения файлов по инициалам файлов в новые созданные папки - PullRequest
0 голосов
/ 25 сентября 2019

Я создал этот пакетный скрипт, и при запуске он создает папки с именами файлов и перемещает эти файлы во вновь созданные папки.

@echo off
for %%i in (*) do (
 if not "%%~ni" == "organize" (
  md "%%~ni" && move "%%~i" "%%~ni"
 )
)

Я хочу изменить это и сделатьследующее: Для имен файлов (.htm), начинающихся с «22. », создайте папку с именем «22» и переместите их внутрь.Для имен файлов, начинающихся с "40. ", создайте папку с именем "40" и переместите их внутрь и т. Д.

Кто-нибудь знает, как?

1 Ответ

0 голосов
/ 25 сентября 2019

Это должно делать то, что вы хотите:

@echo off
for /f "delims=." %%i in ('dir /b /a-d') do (
if /i not "%%~ni" == "organize" (
    mkdir %%i >nul 2>&1
    move %%i.* %%i
  )
 )

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...