Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для Elven

Ветеран


Сообщения: 992
Благодарности: 268

Профиль | Сайт | Отправить PM | Цитировать


папку/файл с "/" в названии не то чтобы невозможно создать, но я за такое не возьмусь. потому с форматом что-то нужно менять. или месяц-год-дата это вложенные папки?
Что по поводу совпадений имен файлов в одной и той же папке? заменять, спрашивать, игнорировать, переименовывать?
сколько цифр после тире брать (вроде как вижу что две, но мало ли...) если количество плавающее - как определять?
Где находятся папки по которым нужно раскладывать (или где их нужно создвавать)?
пока набросал что-то вот такое (с созданием папок в директории в которой ведется обработка, без добавления даты и без обработки совпадающих имен файлов):
Код: Выделить весь код
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION
pushd d:/tmp/
for /f "delims=" %%i in ('dir /b /a:-d *.txt') do (
	for /f "tokens=2 delims=-" %%j in ("%%i") do (
 		set fname=%%j
		if not exist "!fname:~0,2!" (
		 	md "!fname:~0,2!"
		)
		echo move "%%i" "!fname:~0,2!/%%i"
	)
)
popd
и да, без реального перемещения (echo перед move если убрать - будет с перемещением, но не советую пока не выяснены остальные вопросы)

Отправлено: 12:57, 04-09-2020 | #3