标题: [日期时间] 如何删除/去掉日期中月日数字前面/前导/开头的0/零 [打印本页]
作者: 692568516 时间: 2016-4-23 15:55 标题: 如何删除/去掉日期中月日数字前面/前导/开头的0/零
echo %date:~0,4%-%date:~5,2%-%date:~8,2%
截取的是2015-02-20
请问如何修改让截取成2015-2-20就是不个数天数的0
类似于
谢谢
作者: Nsqs 时间: 2016-4-23 16:41
本帖最后由 Nsqs 于 2016-4-23 16:42 编辑
- @echo off
- for /f "tokens=1-3 delims=/- " %%1 in ("%date%")do set/a y=%%1,m=%%2,d=%%3&call set date=%%y%%-%%m%%-%%d%%
- echo %date%
- pause
复制代码
直接调用%date%即可
作者: 692568516 时间: 2016-4-23 16:51
测试可以,非常感谢大神
作者: pcl_test 时间: 2016-4-24 14:24
本帖最后由 pcl_test 于 2016-4-24 21:36 编辑
回复 2# Nsqs
注意八进制的问题
for /f "tokens=1-3 delims=/- " %%a in ("%date%")do set/a y=%%a,m=1%%b%%100,d=1%%c%%100
作者: Nsqs 时间: 2016-4-24 22:12
回复 4# pcl_test
没必要
作者: pcl_test 时间: 2016-4-24 22:26
回复 5# Nsqs
比如2016/01/08
作者: Nsqs 时间: 2016-4-25 00:06
回复 4# pcl_test
一样的,,会有问题
作者: CrLf 时间: 2016-4-25 00:17
回复 7# Nsqs
他的意思是08月09号就不能直接取值了
作者: Nsqs 时间: 2016-4-25 00:37
本帖最后由 Nsqs 于 2016-4-25 01:01 编辑
回复 8# CrLf - :sub bat
- echo off&cls
- cscript -nologo -e:vbs "%0"
- pause
- exit sub
- :end sub
-
- wsh.echo date
复制代码
直接这样``
作者: Nsqs 时间: 2016-4-25 00:38
回复 8# CrLf
太麻烦,要是11-18又会出错,
作者: WHY 时间: 2016-4-26 08:59
- set "d=%date:~0,10%"
- set "d=%d:/0=/%"
- set "d=%d:-0=-%"
- echo;%d%
复制代码
作者: 692568516 时间: 2016-5-9 09:00
本帖最后由 pcl_test 于 2016-5-9 12:00 编辑
回复 2# Nsqs
E:\>set/a y=2016,m=05,d=09 & call set date=%y%-%m%-%d%
无效数字。数字常数只能是十进制(17),十六位进制(0x11)或
八进制(021)。
2楼的出错了,大于10的日期没问题,小于10的就会出错
作者: wzxiaodu 时间: 2016-5-10 13:15
复制代码
这个是什么意思????
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |