|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - CMD/BAT запись в текстоваый файл предыдущей даты |
|
CMD/BAT - CMD/BAT запись в текстоваый файл предыдущей даты
|
Новый участник Сообщения: 42 |
Здравствуйте, форумчане!
В CMD/BAT скрипте, создающем текстовый файл, пытаюсь решить задачу, нужно в одну строку дважды вписать предыдущую дату в формате дд.мм.гггг через ; С текущей датой всё легко и просто, но вот с предыдущей, в интернете много способов, но они для единичной цели, как её повторить через точку с запятой, я так и не смог себя победить(((( |
|
Отправлено: 10:25, 15-07-2021 |
Ветеран Сообщения: 992
|
Профиль | Сайт | Отправить PM | Цитировать cmd весьма неудобен в плане получения даты (варианты есть, но они весьма громоздкие и не очень надежные), лучше использовать powershell. если невозможно полностью отказаться от cmd - то хотя бы вставку на пошике.
|
Отправлено: 11:39, 15-07-2021 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 42
|
Профиль | Отправить PM | Цитировать Цитата Elven:
В ps я вообще никак(((( Помогите, пожалуйста, шапку сделать. Т.е. формируется текстовый файл (пусть tmp_1.txt) в котором идет строка первая (отвечает за загрузку) $&IMPORTDATERATING@ Что бы шапка выглядила так, (т.е. саму головную часть , а остальное я тогда поставлю на дозапись в своём скрипте): $&IMPORTDATERATING@ 14.07.2021;14.07.2021; |
|
Отправлено: 12:48, 15-07-2021 | #3 |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать Technik_spat,
Цитата Elven:
@Echo Off Call :FromDate -1 %Date% "Date1" >"D:\_outfile.txt" ( Echo $^&IMPORTDATERATING@ Echo %Date1%;%Date1%; ) Exit /B :FromDate rem Пересчет даты на заданное кол-во дней rem В первом аргументе +- дни rem Во втором аргументе дата в формате dd.mm.yyyy rem В третем аргументе имя переменной в кавычках где получим новую дату в формате dd.mm.yyyy rem Заимствовано http://forum.oszone.net/thread-186889.html rem вызов Call :FromNow %DeltaDay% %Date% "MyDate" rem результат в перемменной %MyDate% SetLocal Set "DT=%~2" Set yyyy=%DT:~-4%& set /a mm=100%DT:~3,2%%%100& set /a dd=100%DT:~,2%%%100 Set /A JD=%~1+dd-32075+1461*(yyyy+4800+(mm-14)/12)/4+367*(mm-2-(mm-14)/12*12)/12-3*((yyyy+4900+(mm-14)/12)/100)/4 Set /A L=JD+68569,N=4*L/146097,L=L-(146097*N+3)/4,I=4000*(L+1)/1461001 Set /A L=L-1461*I/4+31,J=80*L/2447,K=L-2447*J/80,L=J/11 Set /A J=J+2-12*L,I=100*(N-49)+I+L Set /A yyyy=I,mm=100+J,dd=100+K EndLocal& Set "%~3=%dd:~-2%.%mm:~-2%.%yyyy%" GoTo :Eof |
|
------- Отправлено: 12:49, 15-07-2021 | #4 |
Новый участник Сообщения: 42
|
Профиль | Отправить PM | Цитировать Цитата megaloman:
Получилось всё)))) |
||
Отправлено: 13:18, 15-07-2021 | #5 |
Ветеран Сообщения: 992
|
Профиль | Сайт | Отправить PM | Цитировать в переменную в cmd значение полученное в powershell можно всандалить приблизительно так (не проверял):
Ну или вариант предложенный megaloman, как я и писал ранее - довольно громоздко, хотя этот вариант надежен весьма, даже что-то придумать не могу как его сломать. |
Отправлено: 13:35, 15-07-2021 | #6 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Система - Как скрыть окно в котором выполняется пакетный файл (*.bat или *.cmd)? | Shaytan | Программное обеспечение Windows | 36 | 21-12-2021 14:57 | |
Разное - Bat файл и cmd воюют | lavletec | Microsoft Windows 7 | 9 | 28-12-2016 16:07 | |
CMD/BAT - [решено] Запись в файл hosts с помощью bat-файла | SibAgent | Скриптовые языки администрирования Windows | 20 | 29-07-2015 22:12 | |
CMD/BAT - CMD/BAT - Прошу подсказать, как сделать, чтобы в файл выводились логи пингов. | Vasya- | Скриптовые языки администрирования Windows | 3 | 26-03-2014 16:58 | |
CMD/BAT - [решено] Batch файл (.bat, .cmd) - как сгенерировать произвольное число от 1 до 10? | ANR | Скриптовые языки администрирования Windows | 9 | 26-03-2013 10:02 |
|