2013-12-10 40 views
1

我想運行一個簡單的批處理文件,只顯示一行消息,情人節14-02-2014。如何在特定日期運行批處理文件

我需要在代碼中寫入日期日期(14-02-2014),而不是將它作爲Windows中的任務調度程序。因此,該批處理將每天工作,並且Windows開始無所事事,直到該日期顯示該消息。

我只需要檢查日期的代碼。

謝謝你的時間。

+0

你所說的 '只顯示一行信息' 是什麼意思?將消息回顯到屏幕? – Chelseawillrecover

+0

是的,我只想顯示「HI」信息 – Martin

回答

2

在.bat文件中下面的代碼運行將獲得日期在本地無關的方式(的%date%輸出格式可以根據用戶的設置更改),然後用子設置today你想要的格式(DD-MM-YYYY)。然後IF聲明將檢查日期是否爲今天,如果是,則回顯Hello!

@ECHO OFF 
FOR /F "skip=1" %%x IN ('wmic os get localdatetime') DO IF NOT DEFINED dmy_date SET dmy_date=%%x 
SET today=%dmy_date:~6,2%-%dmy_date:~4,2%-%dmy_date:~0,4% 

IF %today% == 14-02-2014 ECHO Hello! 
+0

謝謝您的幫助,Jared Harley,sachadee,Chelesawillrecover您的時間。 – Martin

0

:::對於NT

echo off 
set $Valentine=14-02-2014 
set $TodayDate=%date:~0,2%-%date:~3,2%-%date:~6,4% 
if %$TodayDate%==%$Valentine% echo "Happy Valentine Day My Love" 

:::對於XP

echo off 
set $Valentine=14-02-2014 
set $TodayDate=%date:~4,2%-%date:~7,2%-%date:~10,4% 
if %$TodayDate%==%$Valentine% echo "Happy Valentine Day My Love" 
+1

'%date%'變量不可靠,取決於區域設置和位置。使用一個返回日期字符串的函數是很明智的,這個日期字符串在任何地方都是一樣的,比如'XP Pro和更高版本的'Wmic'。 – foxidrive

+0

有效地,你的實際,但在99.9%的情況下,這種代碼將是好的,如果不是,容易適應:) – SachaDee