标题: [已结]批处理获取当前日期格式
[打印本页]
作者: alex9527
时间: 2008-12-15 23:52
标题: [已结]批处理获取当前日期格式
如何只用批处理语句获取当前日期格式?
如当前日期是2008-12-15,即获取的格式为:yyyy-mm-dd
可参考:
@echo off
ECHO. |DATE > temp
for /f "eol=T tokens=5 delims=() " %%i in (temp) do set date_format=%%i
echo %date_format%
if EXIST temp DEL /Q temp
pause
能不要把日期先写到文件temp中吗?
我自己改正了,如下:
@echo off
FOR /F "eol=T tokens=5 delims=() " %%i in ('ECHO. ^|DATE') do echo %%i
pause
[
Last edited by HAT on 2008-12-16 at 11:53 ]
作者: pooronce
时间: 2008-12-16 00:36
搞得那麼復雜乾哈
echo %date:~,10%
作者: 15935643331
时间: 2008-12-16 02:32
好!
:~,10
这部分是嘛意思?
作者: 15935643331
时间: 2008-12-16 03:09

作者: 15935643331
时间: 2008-12-16 03:12
取DATE变量的前十个字符
懂了,哈哈。
作者: alex9527
时间: 2008-12-16 09:12
Quote: |
Originally posted by pooronce at 2008-12-16 00:36:
搞得那麼復雜乾哈
echo %date:~,10% |
|
我要获取
日期格式,而不是具体的日期。
感谢你的回复。
作者: pooronce
时间: 2008-12-16 10:38
The current date is: 2008-12-16 星期二
Enter the new date: (yy-mm-dd)
你是指这个: (yy-mm-dd)?
for /f "skip=1 tokens=2 delims=()" %i in ('DATE^<nul') do @echo %i
作者: alex9527
时间: 2008-12-16 10:59
Quote: |
Originally posted by pooronce at 2008-12-16 10:38:
The current date is: 2008-12-16 星期二
Enter the new date: (yy-mm-dd)
你是指这个: (yy-mm-dd)?
for /f "skip=1 tokens=2 delims=()" %i in ('DATE^<nul') do @echo %i |
|
楼上的也是正解。但可能没注意要用“%%i”。
@echo off
for /f "tokens=2 delims=()" %%i in ('DATE^<nul') do echo %%i
pause
可以解释一下'DATE^<nul'为什么会跳一段字符串?第二个tokens就取到日期格式?:)
作者: pooronce
时间: 2008-12-16 11:03
直接在命令符下打的,当然不用%%i,这点区别用不着提吧
你自己试一下DATE命令不就知道为什么了啊。。。
作者: alex9527
时间: 2008-12-16 11:07
Quote: |
Originally posted by pooronce at 2008-12-16 11:03:
直接在命令符下打的,当然不用%%i,这点区别用不着提吧
你自己试一下DATE命令不就知道为什么了啊。。。 |
|
哈,我是新手。谢谢!!
作者: 3mcat
时间: 2010-8-20 01:57
@echo off
setlocal ENABLEDELAYEDEXPANSION
for /f "tokens=2 delims=()" %%x in ('DATE^<nul') do set D_type=%%x
:: echo !D_type!
for /l %%a in (0,1,2) do if "!D_type:~%%a,1!"=="年" set /a D_yr=%%a+1
for /l %%a in (0,1,2) do if "!D_type:~%%a,1!"=="月" set /a D_mr=%%a+1
for /l %%a in (0,1,2) do if "!D_type:~%%a,1!"=="日" set /a D_dr=%%a+1
for /f "tokens=%D_yr% delims=-" %%x in ('DATE /t') do echo 年:%%x
for /f "tokens=%D_mr% delims=-" %%x in ('DATE /t') do echo 月:%%x
for /f "tokens=%D_dr% delims=-" %%x in ('DATE /t') do echo 日:%%x
pause
作者: 3mcat
时间: 2010-8-20 02:00
高手指教一下,怎么判断日期分隔符,长格式日期,去掉星期.
作者: 3mcat
时间: 2010-8-20 02:21
而且这种方式判断日期格式是不准确的
