![]() |
Создание папок с именем дат
Прошу помощи так как давно уже не практиковался и не могу сообразить
Нужен батник при запуске который создаёт папки. Имя папки должны быть даты в формате 12.11.2016. Вся загвоздка в том при запуске батника нужно что бы выходило окно с запросом начальной даты и конечной. Например вводишь 12.11.2016 это начало потом 15.11.2016 это конец и что бы создалось 4 папки за 12, 13, 14, 15 число. Ну как то так. Всем большое спасибо за помощь |
Цитата:
|
Цитата:
|
Ну, ждите. Коллеги, кому не лень будет, может быть, и реализуют. Мне лично подобные извращения (с обязательностью условия использования пакетных файлов без какой-либо необходимости и при существовании простых и доступных «искаропки» альтернатив) порядком поднадоели.
|
gon_za, очевидно, Ваша задача решаема, но, при отсутствии в пакетных файлах штатных средств работы с датой, решение будет громоздким. ИМХО, надо переформулировать задачу с учётом конечной цели: в папки явно будут складываться файлы, которые будут каким-то образом идентифицированы по датам. Создавайте папки по мере надобности, основываясь на информации о дате пришедшего файла. Кстати, я бы именовал папки в формате гггг.мм.дд, потом легче искать папку за нужную дату. Хотелось бы представить всю задачу целиком, а не решать мелкий шаг с сомнительной ценностью для использования.
|
Цитата:
|
Тогда почему именно пакетные файлы?
|
Цитата:
|
gon_za, У Вас явный избыток времени☺, вручную Вы тоже руководствуетесь при копировании какими-то правилами. Поставьте задачу полностью: у меня есть папка с файлами, их надо скопировать (перенести?) по подпапкам в соответствии с моими (какими?) правилами.
Как идея: вводите как бы даты в формате дд.мм.гггг, при этом не проверяем, дата ли это, главное, чтобы гггг был в диапазоне, допустим, от 1900 до 2100, мм от 1 до 12, дд от 1 до 31. Далее откуда- то выбираем Ваши файлы, идентифицируем их дату (создания, изменения, выделяем дату из имени - тут Вам виднее), преобразуем даты в число и анализируем, попадает ли файл в заданный диапазон. Например: Файл с датой 06.03.2016 отвечает условию 20160231<=20160306<=20160431, для него на основе его даты (а в файле кривой даты быть не может) делаем папку с именем корректной даты. И не важно, что в заданных пользователем датах 31 февраля и апреля , на выходе получите набор папок с корректными датами и не пустые. Думаю, надо упорядочить всю папку, поэтому ручками вводить какие то даты и, тем более, вручную копировать (кстати, а вручную это как? Каким способом) - спина заболит и ручки устанут. Задачу надо решать на уровне организации процесса, а уж потом бросаться писать код. |
Цитата:
Это все хорошо но мне это не нужно. Мне нужно запускаешь батник он спрашивает начальную дату например ввожу 01.12.2016 потом спрашивает конечную дату например 05.12.2016 и в этой папке откуда был запущен батник создалось пять пустых папок с именами 01.12.2016, 02.12.2016, 03.12.2016, 04.12.2016, 05.12.2016 и все!!! |
gon_za,
решите ребус: сколько и каких папок будет создано из диапазона: 27.02.2017 - 3.03.2017? |
Если начальная и конечная дата в пределах одного месяца, то всё нормально, в противном в любом месяце принимается число дней 31. Делать контроль на правильное число дней в месяце нет моральных сил.
Код:
@Echo Off |
VBS-скрипт. Папки создаются с именами корректных дат
Код:
Set WShell = CreateObject("WScript.Shell") Цитата:
|
Цитата:
|
Iska, Вы меня пугаете! Я не смотрю последнее время по ящику новости: что, следующий год объявили високосным?
|
Ну, это ведь мы
|
Время: 12:35. |
Время: 12:35.
© OSzone.net 2001-