0 / 0 / 0
Регистрация: 23.09.2013
Сообщений: 16
1

Перемещение файлов в папки

06.06.2017, 12:25. Показов 3766. Ответов 14
Метки нет (Все метки)

Добрый день! Помогите с bat файлом. Задача следующая: Есть множество файлов jpg с разной датой создания. Необходимо раскидать их по папкам вида 2016_03, 2014_02. Где 2016 - год, 03 - месяц создания или изменения.
Заранее благодарен.
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.06.2017, 12:25
Ответы с готовыми решениями:

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

Создание папок с именами заданных файлов и перемещение этих файлов в созданные папки
Подскажите пожалуйста как по названиям файлов txt создать папки и положить в каждую из папок файл с...

Перемещение файлов в папки
Доброго времени суток! Помогите, пожалуйста, с написанием батника. Задача состоит в следующем: в...

Перемещение случайных файлов в случайные папки
Добрый день, уважаемые знатоки. Вопрос-задумка. Что необходимо: 1. на входе имеем файл...

14
Любознательный
2037 / 817 / 221
Регистрация: 10.03.2016
Сообщений: 1,894
06.06.2017, 12:33 2
см здесь
0
0 / 0 / 0
Регистрация: 23.09.2013
Сообщений: 16
06.06.2017, 12:39  [ТС] 3
Цитата Сообщение от YuS_2 Посмотреть сообщение
см здесь
Смотрел, ничего не получилось
0
Любознательный
2037 / 817 / 221
Регистрация: 10.03.2016
Сообщений: 1,894
06.06.2017, 13:08 4
Цитата Сообщение от party3an Посмотреть сообщение
ничего не получилось
Что именно не получилось?
Естественно, скрипт необходимо подкорректировать под Ваши условия.
заменить
$flt = "*.txt" на $flt = "*.jpg"
и
yyyy.MM.dd на yyyy_MM

И да:
Цитата Сообщение от party3an Посмотреть сообщение
создания или изменения
- это могут быть две совершенно разные даты...
0
0 / 0 / 0
Регистрация: 23.09.2013
Сообщений: 16
06.06.2017, 13:54  [ТС] 5
Есть возможность прочитать из файлы jpg дата съемки, и по этому критерию сделать сортировку?

Добавлено через 55 секунд
Цитата Сообщение от YuS_2 Посмотреть сообщение
Что именно не получилось?
Естественно, скрипт необходимо подкорректировать под Ваши условия.
заменить
$flt = "*.txt" на $flt = "*.jpg"
и
yyyy.MM.dd на yyyy_MM

Все поменял. Но ничего не получается. Возможно из-за PowerShell

Добавлено через 10 минут
Вот такая ерунда
.\script1.ps1 : Имя ".\script1.ps1" не распознано как имя командлета, функции,
файла сценария или выполняемой программы. Проверьте правильность написания имен
и, а также наличие и правильность пути, после чего повторите попытку.
строка:1 знак:1
+ .\script1.ps1
+ ~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (.\script1.ps1:String) [], Comma
ndNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
0
196 / 206 / 69
Регистрация: 09.02.2016
Сообщений: 1,040
06.06.2017, 15:14 6
Батник лежит в одной папке с картинками.Путь куда копировать и где создавать папки,сами пропишите.
Windows Batch file
1
2
3
4
5
6
7
8
9
10
@echo off
setlocal enabledelayedexpansion
for %%a in (*.jpg) do (
set g=%%~ta
set g=!g:~0,5!
set h=!g:~0,5!
if not exist "%userprofile%\Desktop\Batch\!h!" md "%userprofile%\Desktop\Batch\!h!"
if !g!==!h! move "%%~dpnxa" "%userprofile%\Desktop\Batch\!h!"
)
pause
0
4072 / 2060 / 648
Регистрация: 26.04.2015
Сообщений: 6,670
06.06.2017, 15:36 7
ZoOoO,
у вас переменные g и h имеют равные значения и условие !g!==!h! всегда true, что-то поправить надо
вот пример для одного файла с использованием его даты изменения (для создания надо по другому будет делать)
Windows Batch file
1
2
3
4
5
6
7
8
9
10
@echo off
call :# file.jpg
pause
 
:#
 set tw=%~t1
 set yyyy=%tw:~6,4%
 set MM=%tw:~3,2%
 if not exist "%yyyy%_%MM%" md "%yyyy%_%MM%"& move "%~1" "%yyyy%.%MM%\%~1"
exit /b
0
196 / 206 / 69
Регистрация: 09.02.2016
Сообщений: 1,040
06.06.2017, 15:48 8
alpap,У меня голова болит.Я не понима о чем Вы)))Код работает как надо.Правда в название папки нету нижнего подчеркивания.Через точку там.
0
Любознательный
2037 / 817 / 221
Регистрация: 10.03.2016
Сообщений: 1,894
06.06.2017, 16:16 9
Цитата Сообщение от party3an Посмотреть сообщение
Имя ".\script1.ps1"
А у Вас там есть скрипт повершелл с таким именем? Исправить надо...
0
0 / 0 / 0
Регистрация: 23.09.2013
Сообщений: 16
06.06.2017, 19:24  [ТС] 10
Цитата Сообщение от ZoOoO Посмотреть сообщение
Батник лежит в одной папке с картинками.Путь куда копировать и где создавать папки,сами пропишите.
Windows Batch fileВыделить код

@echo off
setlocal enabledelayedexpansion
for %%a in (*.jpg) do (
set g=%%~ta
set g=!g:~0,5!
set h=!g:~0,5!
if not exist "%userprofile%\Desktop\Batch\!h!" md "%userprofile%\Desktop\Batch\!h!"
if !g!==!h! move "%%~dpnxa" "%userprofile%\Desktop\Batch\!h!"
)
pause
Скрипт работает, но папки создаются типа число.месяц, нужно год_месяц
0
alpap
06.06.2017, 20:01
  #11

Не по теме:

Цитата Сообщение от ZoOoO Посмотреть сообщение
Я не понима о чем Вы)))
вот об этом!
Windows Batch file
1
2
3
4
5
6
7
@echo off
setlocal enabledelayedexpansion
set g=%~t0
set g=!g:~0,5!
set h=!g:~0,5!
if !g!==!h! (echo А может быть иначе?) else (echo Смысл, если это не наступит)
pause

0
0 / 0 / 0
Регистрация: 23.09.2013
Сообщений: 16
06.06.2017, 20:14  [ТС] 12
Цитата Сообщение от alpap Посмотреть сообщение
вот пример для одного файла с использованием его даты изменения (для создания надо по другому будет делать)
Спасибо!
Как сделать для папки с файлами? И как будет по созданию? И можно ли в качестве критерия выбрать дату съемки (скрин прикрепляю)?
0
Миниатюры
Перемещение файлов в папки  
196 / 206 / 69
Регистрация: 09.02.2016
Сообщений: 1,040
06.06.2017, 20:15 13
Цитата Сообщение от party3an Посмотреть сообщение
Скрипт работает, но папки создаются типа число.месяц, нужно год_месяц
Цитата Сообщение от alpap Посмотреть сообщение
вот об этом!
Windows Batch file
1
2
3
4
5
6
7
8
9
@echo off
setlocal enabledelayedexpansion
for %%a in (*.jpg) do (
set h=%%~ta
set h=!h:~3,-5!
if not exist "%userprofile%\Desktop\Batch\!h!" md "%userprofile%\Desktop\Batch\!h!"
move "%%~dpnxa" "%userprofile%\Desktop\Batch\!h!"
)
pause
0
4072 / 2060 / 648
Регистрация: 26.04.2015
Сообщений: 6,670
07.06.2017, 09:09 14
Цитата Сообщение от party3an Посмотреть сообщение
Как сделать для папки с файлами?
это как? У вас файлы с разными датами в папке, какую из этих дат дать в качестве имени папке?
Цитата Сообщение от party3an Посмотреть сообщение
И как будет по созданию?
через for и dir /tc надо будет вытаскивать даты создания, но делать все виды вариантов никто вам тут не будет - определитесь с задачей
Цитата Сообщение от party3an Посмотреть сообщение
в качестве критерия выбрать дату съемки
попробуйте сделать изменения в файле и посмотрите в свойствах вкладки общие какая дата осталась равной дате съемки или наоборот - стала не равна после этого и в зависимости от этого используйте дату изменения или создания, другую в cmd не вытянуть, надо что-то стороннее привлекать.
0
Любознательный
2037 / 817 / 221
Регистрация: 10.03.2016
Сообщений: 1,894
07.06.2017, 11:36 15
Цитата Сообщение от alpap Посмотреть сообщение
какая дата осталась равной дате съемки
Дата съемки (данные EXIF), дата создания, дата изменения - это три разных даты, которые напрямую никак не зависят друг от друга. Изначально, дата создания, как правило, равна дате съемки, но при копировании и переносах файла, всё может поменяться...

Цитата Сообщение от alpap Посмотреть сообщение
надо что-то стороннее
Стороннее не обязательно... повершелом можно обойтись, правда не совсем тривиально, но можно...
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.06.2017, 11:36

Перемещение файлов в нужные папки и их переименование
Есть 1000 пустых папок, в них нужно переместить определенные jpg файлы из других папок и...

Перемещение файлов из папки в несколько папок по 1000 штук
Здравствуйте! Помогите решить задачу, плиз. Есть папка, содержащая примерно 30 000 xml-файлов...

Переименование файлов по определённому правилу и их перемещение в папки с соответствующими именами
Здравствуйте. Помогите пожалуйста написать батник. Необходимо переименовать массив файлов по...

Перемещение всех файлов из каждой подпапки одной папки в другую папку и их переименование
Добрый день! Прошу помощи, нужен батник или скрипт, который перемещал бы файлы из...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.