我需要在批處理文件中以YYYYMMDD格式獲取日期。在Windows批處理文件中以YYYYMMDD格式獲取日期
我做這個使用:
set mydate=%date:~6,4%%date:~3,2%%date:~0,2%
echo %mydate%
我需要它是整個系統保持一致,甚至在改變時間設置。
請指教。
我需要在批處理文件中以YYYYMMDD格式獲取日期。在Windows批處理文件中以YYYYMMDD格式獲取日期
我做這個使用:
set mydate=%date:~6,4%%date:~3,2%%date:~0,2%
echo %mydate%
我需要它是整個系統保持一致,甚至在改變時間設置。
請指教。
你可以試試這個!這應該在Windows機器上工作。
for /F "usebackq tokens=1,2,3 delims=-" %%I IN (`echo %date%`) do echo "%%I" "%%J" "%%K"
不是,分隔符爲'/'時。對於區域獨立方法,請參閱:http://stackoverflow.com/questions/203090/how-to-get-current-datetime-on-windows-command-line-in-a-suitable-format-for-us – 2015-01-06 10:06:17
錯誤: 「%%我在這個時候是意外的。」 – 2016-03-03 12:34:44
%% vs%one批處理文件另一個用於命令行 – 2016-04-06 21:23:01
如果在閱讀其他問題並查看評論部分中提到的鏈接後,仍然無法弄清楚,請繼續閱讀。
首先,你要錯的地方是偏移量。
應該看起來更像這個...
set mydate=!date:~10,4!!date:~6,2!/!date:~4,2!
echo %mydate%
如果日期是Tue 12/02/2013
那麼它會顯示爲2013/02/12
。要刪除斜線,代碼看起來更像set mydate=!date:~10,4!!date:~7,2!!date:~4,2!
,它會輸出20130212
,這看起來不像日期。
並提示未來要做,如果mydate
等於類似!date:~10,4!!date:~7,2!
之類的東西,您可能已經忘了波浪號(〜)。
偏移不一定是錯誤的:這一切都取決於您當前的日期/時間區域設置。 在我的電腦上,%date%給出了Sun 04/26/2014。 有沒有安全的方式,我可以想到它會這樣安全 – 2014-04-26 08:53:37
感嘆號!在DOS中似乎沒有工作? – 2014-11-25 18:12:27
DOS中的感嘆號失敗,請用百分號替換它。這對我來說無所不在。 – 2016-06-10 02:55:09
您可以參考[this] [1]鏈接瞭解更多信息。 [1]:http://stackoverflow.com/questions/14427490/how-to-set-date-from-cmd-after-retrieving-it/14435810#14435810 – Dale 2013-02-11 12:36:04
回波%日期:〜4 ,2% - %日期:〜7,2% - %日期:〜10,4% – 2017-10-07 08:32:02