Перемещение файлов по папкам по имени
Здравствуйте. Я только начал изучение данного вопроса а проблема требует немедленного решения. В связи с эти большая просьба помочь.
Необходимо переместить файлы в папки. Файлы находятся в одной папке и имеют наименования состоящие из номера и даты, например ПГ 92 07-59480-17 от 02.11.2017.docx Папки так же уже созданы и имеют наименование из номера и даты, например 07-59480-17 от 02.11.2017 То есть начало имени файла и папки могут отличаться ну и расширение файла в имени папки не присутствует. Перемещать нужно при полном совпадении номера (**-******-**) и даты ДД.ММ.ГГГГ Заранее спасибо. |
я так понял файлы в одной папке, а папки с именами "из номера и даты" - в другой, тогда как-то так
Код:
@echo off |
Спасибо за помощь. Начало имени файла может отличаться, но может и не отличаться, номер и дата всегда совпадают.
Имя папки более предсказуемо выглядит. Только номер и дата. Выдает ошибку: Не удается найти указанный файл Перемещено файлов: 0 |
если в именах папок/файлов содержатся кирилические символы - сохранить батник в 866 кодировке (например через NPP). Ну и о пробелы традиционно споткнуться можно, настолько их автоматически избегаю, что забываю о том, что они таки имеют место быть, если в именах есть пробелы тогда так:
Код:
@echo off |
Огромное спасибо Elven! Слов нет! Дело которое человек делал бы до самой старости, благодаря Вашим знаниям, делается одним (двойным) нажатием на клавишу мыши. Еще раз спасибо!
|
Оказалось что помимо файлов с датой (ПГ 92 07-59480-17 от 02.11.2017.docx) есть файлы без даты в названии (КФК 07-59480-17.jpg). Данный скрипт их не перемещает так как ищет совпадение с названием папки. Как выбрать первые 11 символов в названии папки ума не приложу...
Большая просьба помочь. |
:( Помогите :(
|
Цитата:
Код:
@Echo Off ИМХО, задача требует уточнение
Если номер в имени файла/папки уникален, то есть, он в файле/папке за другой день фигурировать не может, то скрипт упрощается. Логика задачи требует именно этого, раз есть файлы с номером и без даты.
Код:
@Echo Off |
Ошибку выдает:
Скрытый текст
d:\>5.bat d:\>я╗┐@echo off "я╗┐@echo" не является внутренней или внешней командой, исполняемой программой или пакетным файлом. d:\>Set "BoxFile=D:\files" d:\>Set "Folders=D:\folders\??-?????-?? ╨╛╤В ??.??.????" d:\>FOR /F "usebackq delims=" %d IN (`2>nul Dir "D:\folders\??-?????-?? ╨╛╤В ??. ??.????" /A:D /B /O:-D /T:W`) DO Set "Ndir=%d" & Call :Separ "D:\folders\??-?? ???-?? ╨╛╤В ??.??.????" "%d" d:\>FOR /F "usebackq delims=" %d IN (`2>nul Dir "D:\folders\??-?????-?? ╨╛╤В ??. ??.????" /A:D /B /O:-D /T:W`) DO Set "Ndir=%d" & Call :Separ "D:\folders\??-?? ???-?? ╨╛╤В ??.??.????" "%d" %Ndir:~0,-14% d:\>GoTo :Eof |
|
А ведь я изначально так и сделал. Но NPP изменение кодировки не сохранил пока не сохранил в новый файл. Всё заработало. Огромное спасибо!!!!!!!!!!!
|
Потому я лично предпочитаю редактор Far Manager'а.
|
Спасибо! Сегодня уже успел хорошо по-мучиться с кодировками в NPP. Перейду на Far Manager.
|
Мурат09, на будущее ещё порекомендую вот этот плагин для работы с исходниками: [ESC] Editor's settings changer.
|
Iska, спасибо. Прямо сейчас загружу и начну пользоваться так как снова столкнулся с проблемами с кодировкой при работе с NPP.
|
Время: 01:04. |
Время: 01:04.
© OSzone.net 2001-