Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] Создание папок по имени и перемещение файлов

Ответить
Настройки темы
Любой язык - [решено] Создание папок по имени и перемещение файлов

Новый участник


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

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


Изменения
Автор: xan08
Дата: 03-07-2019
Добрый день. Помогите алгоритмом решения, примером, готовым решением. Задача обстоит так следующим образом.
В папке D:\backup множество файлов по типу D_Воскресенье_56_my-files_backup.2019-06-09-10-00_00 Есть задача раскладывать их в папку "Неделя 27" -> ''D_Воскресенье" и .т.д. Папки должны генерироваться автоматически в зависимости от того какая неделя. Нашел скрипт который создает папку беря за основу часть из названия файла. А вот как прикрутить создание папки с номером недели и перемещать файлы в актуальную неделю не могу найти решения.

Код: Выделить весь код
@echo off
setlocal

set "basename=."
for /F "tokens=2* delims=_" %%a in ('dir /B /A-D ^| sort /R') do (
   set "filename=D_%%a"
  setlocal EnableDelayedExpansion
   for /F "delims=" %%c in ("!basename!") do if "!filename:%%c=!" equ "!filename!" (
      set "basename=!filename!"
       md "!basename!"


 )

  move "!filename!_%%b" "!basename!"
   for /F "delims=" %%c in ("!basename!") do (
     endlocal
      set "basename=%%c
)
)

Отправлено: 13:12, 03-07-2019

 

Ветеран


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

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


Цитата YuS_2:
Никак не зависит. Существует международный стандарт ISO 8601, кроме того ГОСТ ИСО 8601 (межгосударственный стандарт), которые определяют четко и ясно, какая неделя считается первой в году, а какая крайней. »
Коллега, Вы путаете стандарты и существующие реалии.

Отправлено: 13:25, 05-07-2019 | #11



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для YuS_2

Crazy


Contributor


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

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


Цитата Iska:
Вы путаете стандарты и существующие реалии. »
Почему путаю? Реалии они, возможно, и не такие, какие должны быть, но:
Если кому-либо, захочется плясать от собственной печки, то тут, конечно, ничем не поможешь, это понятно.
Но если уж использовать в ПО понятия, которые стандартизированы, то зачем изобретать велосипеды? Надо просто заглянут в документацию и следовать тому, что в ней написано. Имхо.

-------
scio me nihil scire. Ѫ


Отправлено: 13:45, 05-07-2019 | #12


Ветеран


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

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


YuS_2, дело в том, что реалии существовали задолго до появления стандартов и какого-либо ПО в принципе.

Отправлено: 13:52, 05-07-2019 | #13


Аватара для YuS_2

Crazy


Contributor


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

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


Цитата Iska:
дело в том, что реалии существовали задолго до появления стандартов и какого-либо ПО в принципе. »
Но это же не значит, что нам теперь надо расстояние измерять в вёрстах, длину в аршинах, локтях, вершках, перстах и т.п.?
Нет, можно конечно и по юлианскому календарю жить... но, имхо, это равнозначно плаванию против течения... непродуктивно, то бишь.

-------
scio me nihil scire. Ѫ


Отправлено: 15:09, 05-07-2019 | #14


Ветеран


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

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


YuS_2, знаете, это не мне надо рассказывать. Вон, те же Штаты по сю пору длину меряют не метрами, объёмы — не литрами, первая неделя в году у них всё еще начинается с первого января, да и сама неделя всё ещё начинается у них с воскресенья. И ладно бы они одни…
Это сообщение посчитали полезным следующие участники:

Отправлено: 15:29, 05-07-2019 | #15


Аватара для YuS_2

Crazy


Contributor


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

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


Цитата Iska:
Вон, те же Штаты по сю пору длину меряют не метрами, объёмы — не литрами, первая неделя в году у них всё еще начинается с первого января, да и сама неделя всё ещё начинается у них с воскресенья. »
Это понятно, спорить тут не о чем, наверное. Естественно, что не везде и не повсеместно, все проблемы стандартизации мер и весов решены на все сто...
Проблемы различных летоисчислений, учета времени и прочего, связанного с календарями, как раз, следствие отсутствия международных стандартов. А англосаксы, всегда были ведь впереди планеты всей с навязчивыми и навязываемыми идеями... а все нормальные и вменяемые, рано или поздно, принимают международные стандарты (во всяком случае, по достаточно важным аспектам жизни), чем сильно упрощают жизнь себе и другим...
И да, мы ведь живем в реалиях стран проживания, правильно? А межгосударственный стандарт, который создан на основе международного, принят ещё с 2004г., причем принят не одной страной, что в нем самом и записано. Поэтому считаю, что не имеет смысла оглядываться на футо-мили-пинты, а жить по тем самым стандартам, которые приближены к международным. Так надежнее и проще, имхо.

-------
scio me nihil scire. Ѫ


Отправлено: 05:53, 06-07-2019 | #16


Ветеран


Contributor


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

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


YuS_2, я не знаком с аргументацией, почему по ГОСТ ИСО 8601-2001 "ПРЕДСТАВЛЕНИЕ ДАТ И ВРЕМЕНИ" первая неделя года должна содержать первый четверг года, для каких отраслей это критично,я не берусь судить.
Речь о другом: есть клиент с поставленной задачей, которому надо как-то структурировать бэкапы. И, в данном случае, способ нумерации недель я бы отдал на откуп клиенту, он должен определиться, зачем ему это нужно. Интуитивно мне ближе "американский" способ нумерации недель- неделя с 1 января первая, но, когда принимался ГОСТ, очевидно, были серъезные основания делать по иному.

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Отправлено: 10:33, 06-07-2019 | #17

mwz mwz вне форума

Аватара для mwz

Ушел из жизни


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

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


Цитата megaloman:
первая неделя года должна содержать первый четверг года »
Потому что в такой "неделе" больше чем половина недели: 4 дня минимум.

"Почему от понедельника до субботы — пять дней, а от субботы до понедельника — два?"

-------
Mikhail Zhilin


Отправлено: 11:22, 06-07-2019 | #18


Ветеран


Contributor


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

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


mwz, зачпм вообще такое нужно? Имхо, чтобы избежать двойного счета одной недели в разных годах. Иначе коллизия: число недель за несколько лет меньше чем сумма количества недель за каждый год в периоде. Наверное, с точки зрения заключения договоров, где сроки исчислены в неделях, это важно. С точки зрения хранения бэкапов - не думаю, что это удобно. То есть, возвращаясь к теме, клиенту виднее

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Отправлено: 11:57, 06-07-2019 | #19


Аватара для YuS_2

Crazy


Contributor


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

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


Цитата megaloman:
Интуитивно мне ближе "американский" способ нумерации недель- неделя с 1 января первая, но, когда принимался ГОСТ, очевидно, были серъезные основания делать по иному. »
Ок, можно и с аргументацией:
1. пусть будет 1 января - первая неделя...
2. 1 января - допустим суббота.
Внимание вопросы:
1. Сколько недель в году?
2. Какая неделя в году последняя?
3.1 01.01, суббота - это какая неделя?
3.2 31.12, пятница - это какая неделя?
3.3 пятница и суббота - это одна неделя или две?
как-то так... как будут в "американском" стандарте звучать ответы?

Международным стандартом описываются именно такие вот вопросы, вот такими ответами:
1. В году 52 или 53 недели.
2. Предыдущая первой неделе следующего года.
3.1 Последняя неделя предыдущего года.
3.2 Последняя неделя уходящего года.
3.3 Одна, единственная неделя.

Цитата megaloman:
первая неделя года должна содержать первый четверг года, для каких отраслей это критично,я не берусь судить. »
Первая календарная неделя года может включать до трех дней предыдущего календарного года. Последняя календарная неделя календарного года может включать до трех дней следующего года.
Четверг взят как промежуточное звено, то бишь среднее значение календарной недели. Там же, из тех же соображений, есть ещё и упоминание 4 января, по которому тоже можно определять первую календарную неделю календарного года.
В каких отраслях это критично - я тоже не возьмусь судить, но во всяком случае, никаких разночтений этот стандарт не допускает. И это правильно, независимо от области применения... если этого не описывать в стандарте, то может возникнуть вольная трактовка подсчета недель и какие изощренные умы могли бы этим воспользоваться и в каких целях, можно только догадываться.

-------
scio me nihil scire. Ѫ


Отправлено: 12:11, 06-07-2019 | #20



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] Создание папок по имени и перемещение файлов

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Создание папок исходя из дат создания файлов и перемещение их в эти папки mezzin Скриптовые языки администрирования Windows 13 25-01-2018 18:38
CMD/BAT - Создание папок с подпапками и перемещение файлов в конечную подпапку alekseivasilyev70 Скриптовые языки администрирования Windows 1 13-09-2017 22:34
CMD/BAT - [решено] Создание папок на основе имен файлов и перемещение файлов в эти папки mezzin Скриптовые языки администрирования Windows 4 10-12-2016 21:11
CMD/BAT - [решено] перемещение файлов , последних по имени Alexander_88 Скриптовые языки администрирования Windows 5 21-08-2014 13:39
CMD/BAT - [решено] Создание папок по дате получения файлов и перемещение в них файлов KamikadZZe Скриптовые языки администрирования Windows 1 01-09-2011 14:15




 
Переход