<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; CMD/BAT создание папки со вчерашней датой]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=5344&amp;type=atom" />
	<updated>2011-01-09T19:59:58Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=5344</id>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT создание папки со вчерашней датой]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=43482#p43482" />
			<content type="html"><![CDATA[<p>CMD + VBS<br /></p><div class="codebox"><pre><code>@echo off
echo WScript.Echo DateAdd(&quot;D&quot;, WScript.Arguments(0), Now)&gt; &quot;%temp%\dt+.vbs&quot;

call :dayadd -1
md &quot;%$d:/=.%&quot;

del /q &quot;%temp%\dt+.vbs&quot;
goto :eof

:dayadd
for /f %%i in (&#039;cscript //nologo &quot;%temp%\dt+.vbs&quot; %~1&#039;) do set &quot;$d=%%i&quot;
goto :eof</code></pre></div>]]></content>
			<author>
				<name><![CDATA[!k]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26608</uri>
			</author>
			<updated>2011-01-09T19:59:58Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=43482#p43482</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT создание папки со вчерашней датой]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=43479#p43479" />
			<content type="html"><![CDATA[<p><span style="color: Green"><strong>djrust</strong>, код на форуме оформляется <a href="http://forum.script-coding.com/help.php#bbcode">тэгом «code»</a>.</span></p><p>Проводить вычисления с датой в пакетных файлах возможно, но сие является весьма нетривиальной задачей. Простого вычитания мало: что будет, если Вы будете вычитать от первого числа месяца? Значит, надо после вычитания корректировать месяц и день. Последний день за предыдущий месяц бывает разными числами, от 28(29 — в високосный год) до 31. А если предыдущий месяц должен получиться декабрь? Надо будет учитывать и это.</p><p>Ещё раз повторюсь — в принципе, возможно; реализацию я видел. Но, думаю, проще и понятнее будет, ежели пользовать какую-нибудь внешнюю утилиту, например, ту же «DateX.exe» из комплекта <a href="http://www.westmesatech.com/sst.html">Shell Scripting Toolkit</a>:<br /></p><div class="codebox"><pre><code>@echo off
setlocal

for /f &quot;usebackq&quot; %%i in (
    `&quot;%ProgramFiles%\Shell Scripting Toolkit\DateX.exe&quot; -o -1 -f &#039;dd.mm.yyyy&#039;`
) do set sFormatDate=%%i

if defined sFormatDate if not exist &quot;D:\backup\%sFormatDate%&quot; md &quot;D:\backup\%sFormatDate%&quot;

endlocal
exit /b 0</code></pre></div>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2011-01-09T19:27:19Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=43479#p43479</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[CMD/BAT создание папки со вчерашней датой]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=43356#p43356" />
			<content type="html"><![CDATA[<p>хочу создать папку,чтобы она была с датой -1 день<br />mkdir mkdir D:\backup\%DATE%&quot; так текущая дата создается(06.01.2011),а как чтобы 05.01.2011?</p><p>нашел тут вот такое</p><br /><div class="codebox"><pre><code>set D=%date:~0,2%
set M=%date:~3,2%
set Y=%date:~6,4%
set /a DD=%D% -1
set /a MM=%M%
set /a YY=%Y%
set DT=%DD%.%MM%.%YY%</code></pre></div><p>но выдает 5.1.2011 ,но не 05.01.2011</p>]]></content>
			<author>
				<name><![CDATA[djrust]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26041</uri>
			</author>
			<updated>2011-01-06T12:51:16Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=43356#p43356</id>
		</entry>
</feed>
