Войти

Показать полную графическую версию : rename "c:\1\%date%\" "%date%" ----- ????????????


morozov_s_v
13-09-2010, 16:27
Всем привет.
Подскажете как быть:

нужно переименовать папку которая создана вчера имя которой является дата вчерашнего дня на дату сегодняшнего дня :
например : rename "c:\1\%date%\" "%date%" ------- но так не работает тк. система не находит в имени папки вчерашнее число, она смотрит на текущую дату и соответственно ругается.

Подскажите как быть.

Олег97
13-09-2010, 17:02
for /f "tokens=1,2* delims=." %%I in ('echo %date%') do set /a day=%%I& set /a mon=%%J& set /a year=%%K
set /a day-=1
ren "C:\1\%day%.%mon%.%year%\" "%date%"

как то так

morozov_s_v
13-09-2010, 17:19
for /f "tokens=1,2* delims=." %%I in ('echo %date%') do set /a day=%%I& set /a mon=%%J& set /a year=%%K set /a day-=1 ren "C:\1\%day%.%mon%.%year%\" "%date%" »


Олег97 Прошу Вас - Вы можете разъяснить как это работает ?

kiripanda
14-09-2010, 03:13
как то так1. Не будет работать 1-го числа каждого месяца.
2. Если число/месяц с лидирующим нолём, то не будет работать с 01 по 10-е число и 08, 09 месяц.

how to print previous date (http://www.dostips.com/forum/viewtopic.php?f=3&t=1224)

kiripanda
14-09-2010, 04:10
На VBS :
Dim fso, Yesterday, Today, path

path = "z:\1\"

Yesterday = DateSerial(Year(Date), Month(Date), Day(Date)-1)
Today = DateSerial(Year(Date), Month(Date), Day(Date))

Set fso = CreateObject("Scripting.FileSystemObject")
If fso.FolderExists(path & Yesterday) Then
fso.MoveFolder path & Yesterday, path & Today
Else
Wscript.Echo "Folder does not exist."
End If

WScript.Quit




© OSzone.net 2001-2012