![]() |
Батник формирующий дату вчера-сегодня-завтра для применения в командах
Всем привет. Помогите дописать код даты завтрашнего дня в следующем батнике:
Код:
@echo off |
Sergey.l,
вам в прошлой вашей теме DJ Mogarych привел хороший пример для вчерашней, для завтрашней ничуть не сложнее (PowerShell): Код:
mkdir (get-date).AddDays(1).ToString("dd.MM.yyy") |
Какое расширение у файла должно быть. Можете вместе с коммандами написать, которые указал выше. Мне нужно по маске с датой создавать папки, перемещать файлы (если в имени есть дата), копировать с добавлением даты в имя файла.
Например, создать папки в формате гггг/мм/дд Переместить файл ддмм_имя.doc Скопировать файл имя.doc в папку с добавлением даты ддмм_имя.doc А если не сложно, то помогите ДОПИСАТЬ в батник код завтрашней даты. В первом сообщении я все указал... Цитата:
|
Sergey.l, У меня ощущение, что моё решение Вы сочли бесполезным и не вчитывались.
Однако! Там приведена подпрограмма, которая пересчитывает даты на произвольное число дней как вперёд, так и назад.
Код:
@Echo Off |
Подскажите, а как мне разделить dd mm yyyy для разных команд в одном файле, если эти обозначения одинаковы для вчера, сегодня и завтра.
Цитата:
|
Sergey.l,
Цитата:
Не делать одинаковые обозначения. Например:
Код:
@Echo Off |
Я извиняюсь, за свою некомпетентность, но можно вас попросить. Прислать полный код например с такими командами (я не пойму где их указать в вашем коде)
Это будет в батнике УТРО (пример) md d:\год\месяц\сегодня\ md d:\год\месяц\завтра\ сopy d:\шаблон.doc d:\год\месяц\сегодня\сегоднямесяц_шаблон.doc Это будет в батнике КОНЕЦ СМЕНЫ (пример) move d:\год\месяц\вчера\вчерамесяц_шаблон.doc d:\архив\год\месяц\вчера\ Я заметил по предыдущим темам, что вы не понимаете, зачем мне вчера-сегодня-завтра в одном батнике. Они в разных, но в некоторых есть по две даты. К содалению такой принцип работы. Чтобы вы поняли суть этой неразберихи, объясню принцип своей работы. Я прихожу на дежурство(смену) и запускаю например батник УТРО, при помощи него создаются рабочие папки, копируются шаблоны с добавлением текущей даты в формате ддмм_шаблон в нужные мне рабочие папки и т.д. В течении суток я работаю с файлами в папках, некоторые создаю макросами в эксель и ворд. Новые файлы также содержат дату. В конце смены, т.е. на следующий день, росле того как все распечатаю руководству, а у меня его много, я батником КОНЕЦ СМЕНЫ перемещаю файлы в папки с архивами, т.е. по маске даты "вчерашний день" команды находят файлы и переносят в папки-архив. И затем передаю дежурство другой смене и так 1/2 Папка с затрашним днем нужна для перемещения некоторых файлов для новой заступающей дежурной смены. 1. Могу я использовать в командах формат dd, т.е. переменные dd mm yyyy отдельно или только в формате dd.mm.yyyy, как у вас написано в коде? Т.к. иногда надо найти и переместить файл формата ddmm.doc 2. Куда именно вставлять команды в вашем коде? Пожалуйста, напишите код, если не сложно, с моими примерами команд указанными выше. Хочется облегчить рабочий процесс, т.к. в день сотни файлов, пачки бумаги и просто физически не успеваешь вручную все перекидывать. Проще указать команды, пути и нажав кнопку все выполнить за секунды. Цитата:
|
Sergey.l,
например с такими командами
Код:
@Echo Off %yyyyY% %mmY% %ddY% Это Год Месяц День вчера %yyyyT% %mmT% %ddT% Это Год Месяц День завтра Вы получили переменные Год Месяц День, используйте их так, как Вам нужно в любой комбинации. Например, если сегодня 11 января 2018года, то: %yyyy%-%mm%-%dd% даст значение 2018-01-11 %dd%.%mm%.%yyyy% даст значение 11.01.2018 При вызове подпрограммы Call :StrDate "yyyy" "mm" "dd" "hhmm" получим сегодняшние %yyyy% %mm% %dd% Переменные можно обозвать и иначе, лишь бы было соответствие "yyyy" "mm" "dd" --> %yyyy% %mm% %dd% Call :FromNow 1 %dd%.%mm%.%yyyy% "yyyyT" "mmT" "ddT" По сегодняшней дате %dd%.%mm%.%yyyy% (то есть 11.01.2018) Получаем дату "завтра" (1 день вперёд от сегодня) %yyyyT% %mmT% %ddT% (то есть соответственно значения 2018 01 12) |
Sergey.l,
имхо (относительно вашего описанного в #7) дать сменам номера (ники, ...) и именовать ими папки передачи с добавлением даты передачи и не морочить голову ни себе ни людям. |
Вложений: 1
Адаптировал ваш батник под свои команды. Просто идеально. Огромнейшее спасибо. Век буду помнить!
p.s. для справки. Когда тестировал батник не на рабочем компе, он выдал ошибку(см.вложение). С чем может быть связано? (ДЧ-это имя компьютера) А на рабочем все идеально, отработал как часы👍 Цитата:
|
Цитата:
Код:
WMIC OS GET LOCALDATETIME /VALUE |
Цитата:
|
Время: 18:31. |
Время: 18:31.
© OSzone.net 2001-