简单的时间改变.bat

时间:2015-12-02 09:40:57

标签: date batch-file

是否可以制作一个像这样工作的.bat文件:

  1. 以dd.mm.yyyy格式获取当前日期
  2. 将日期更改为所需的日期
  3. 等待60秒
  4. 将日期更改回原始状态
  5. 出口
  6. 我知道我可以通过echo%date%得到当前日期,我得到格式为dd.mm.yyyy,但我不知道如何通过一个命令改变它,“设置日期”它对我不起作用。我也知道我可以通过简单的命令“date”更改日期然后输入日期但不知道如何自动化它。任何人都可以写这样的东西吗?

1 个答案:

答案 0 :(得分:1)

要更改日期,您需要管理员权限!

你可以像echo 05.12.15|date

那样做

您可以看到如何在specific format中查看如何获取日期,在这里您可以看到如何wait in batch的一些技巧。

以下是脚本 - (以管理员权限运行!):

@if (@X)==(@Y) @end /* jscript commend
@echo off

set "desired_date=03.12.15"

:: execute jscript part and get the date in a specific format
for /f "tokens=1-3 delims=- " %%A in ('cscript //E:JScript //nologo "%~f0"') do (
    set fdate=%%C.%%B.%%A
)

rem echo %fdate%

::change date
echo %desired_date%|date

::wait 60 seconds
typeperf "\IPv4\Datagrams Received/sec" -si 60 -sc 1 >nul 2>nul


::return date to its original state
echo %fdate%|date

exit /b 0
end of jscript commend*/

function GetCurrentDate() {
        // Today date time which will used to set as default date.
        var todayDate = new Date();
        todayDate = todayDate.getFullYear() + "-" +
                       ("0" + (todayDate.getMonth() + 1)).slice(-2) + "-" +
                       ("0" + todayDate.getDate()).slice(-2) + " " + ("0" + todayDate.getHours()).slice(-2) + ":" +
                       ("0" + todayDate.getMinutes()).slice(-2);

        return todayDate;
    }

WScript.Echo(GetCurrentDate());