如何在批处理中加入现在的日期?

来源:百度知道 编辑:UC知道 时间:2024/05/15 19:32:30
我使用的一个软件由于是过期的,是由一个cmd文件启动。每次开软件的时候都要把系统时间更改到以前(比如:2000/02/03),然后重新启动一个服务才能打开那个软件,我编辑了那个cmd文件,以前如下:
call D:\Ideas\Ms6\bin\setup_varbs.cmd
echo I-DEAS Drafting Software Location: %SDRC_INSTL%
%SDRC_INSTL%\gdr\draftingcom.cmd %*

我修改后:
date 2000-02-03
tasklist|find /i "drafting.exe" && if errorlevel 0 goto start
tasklist|find /i "lmgrd.exe" && if errorlevel 0 goto restartservice
goto openservice

:openservice
sc start "I-DEAS MS6 License Manager"
goto start

:restartservice
net stop "I-DEAS MS6 License Manager"
sc start "I-DEAS MS6 License Manager"
goto start

:start
call D:\Ideas\Ms6\bin\setup_varbs.cmd
echo I-DEAS Drafting Software Location: %SDRC_INSTL%
%SDRC_INSTL%\gdr\draftingcom.cmd %*

注:“drafting.exe”为启动最后的进程,"I-DEAS MS6 License Manager"

<yogld>提供的就行.
在一个批处理里,也可以这样写,插入到程序启动前后即可.

'备份和设置时间部分
setlocal
set myday=%date%
date 1994-10-06

'还原时间部分
pause
date %myday%

这样修改:

REM 在前面读取系统现在的时间,并赋值给变量date。
if exist date.txt del ipconfig.txt
date /t >date.txt
for /f " tokens=1" %%M in (date.txt) do set date=%%M
REM 中间不做变动

date 2000-02-03
tasklist|find /i "drafting.exe" && if errorlevel 0 goto start
tasklist|find /i "lmgrd.exe" && if errorlevel 0 goto restartservice
goto openservice
REM 软件启动后恢复日期。
DTAE %date%
rem 其它不做改变,但日期改过来之后,软件是否正常运行,需自行测REM 试。
:openservice
sc start "I-DEAS MS6 License Manager"
goto start

:restartservice
net stop "I-DEAS MS6 License Manager"
sc start "I-DEAS MS6 License Manager"
goto start

:start
call D:\Ideas\Ms6\bin\setup_v