iamlaosong文

在Linux下,简单的一句话:date '+%Y%m%d-%H%M%S'就可以得到你要的输出:20120331-064219 
可是在windows下,要想得到这个,简单的办法是直接用字符串格式化输出。

比如,如果你的机器上时间的输出是这样子的:

c:\>echo %date%-%time% 
2017-05-15 星期一- 5:16:34.29 
那么,要想得到日期和时间的格式化输出,可以这样截取字符串: 
c:\>echo %date:~0,4%%date:~5,2%%date:~8,2%-%time:~0,2%%time:~3,2%%time:~6,2% 
20170515- 52406 
表示取从0位置开始4个字符等等。日期部分截取没有任何问题,但时间部分有点小问题。
当时间小于10时,这个方法小时部分含有一个空格,做个简单的替换就行了。为了防止多次取时间造成的不一致,建议一次性取值,然后进行字符串处理。例如:

set dd=%date%

set tt=%time%
set tt1=%dd:~0,4%%dd:~5,2%%dd:~8,2%-%tt:~0,2%%tt:~3,2%%tt:~6,2%
echo %tt1%
set tt2=%tt1: =0%
echo %tt2%
替换前后分别显示为:20170515- 54430和20170515-054430

时间超过10点时,字符串中无空格,相当于没做替换,所以不必判定是否存在空格。

取当天的日期比较简单,如果需要取前几天或后几天的日期就比较麻烦了(Linux下很简单,用命令:date -d '-1 day' +%Y%m%d),方法很多,我觉得比较简单的还是用VBS脚本完成。

=================================================

附:批处理获取昨天的系统日期(当前日期前一天)

说明:此方法不是单纯的DOS命令,需要配合vb脚本完成。方法如下:

@echo off
cd /d %~dp0
echo %cd%

echo wscript.echo dateadd("d",-1,date) >tmp.vbs

for /f "tokens=1,2,3 delims=/" %%i in ('cscript /nologo tmp.vbs') do (
set /a y=%%i
set /a m=%%j
set /a d=%%k
)

ECHO %y%
echo %m%
echo %d%

if %m% LEQ 9 set m=0%m%
if %d% LEQ 9 set d=0%d%

set tt=%y%%m%%d%
echo %tt%

del /s /q tmp.vbs

pause
echo on

批处理命令说明如下:
@echo off

rem 以下进入和显示批处理脚本所在的目录
cd /d %~dp0
echo %cd%

rem 以下将vb的命令输出到一个当前目录的vb脚本,这个vb的命令就是可以直接取出前一天的日期
rem 日期显示的格式会根据系统格式显示也不同
rem 输入的这个脚本可以直接双击运行得出前一天的日期,如果需要请先注释掉删除这个vb脚本的语句
echo wscript.echo dateadd("d",-1,date) >tmp.vbs

rem 使用for命令加tokens参数,在前面vb脚本得出的结果,以‘/’为分隔标志取出前三项
rem 然后把取得三个结果分别赋予不同的变量,从‘i’开始,依此为‘i’‘j’‘k’。(可以去更多项,依此赋予‘l’‘m’…………)
for /f "tokens=1,2,3 delims=/" %%i in ('cscript /nologo tmp.vbs') do (
rem 重新为取出三个结果定义变量,这里根据年、月、日的缩写定义
set /a y=%%i
set /a m=%%j
set /a d=%%k
)

rem 显示出重新定义的结果
echo %y%
echo %m%
echo %d%

rem 如果取出的三项结果里有小于9的,用0填充。
if %m% LEQ 9 set m=0%m%
if %d% LEQ 9 set d=0%d%

rem 设置变量,将判断填充过的结果组合成想要的日期格式。
set tt=%y%%m%%d%
echo %tt%

rem 删除自动生成的vb脚本
del /s /q tmp.vbs

pause

echo on

结束,,,恭喜你成功了

DOS批处理下格式化日期字符串相关推荐

  1. 如何利用pandas将时间戳格式化日期字符串呢?

    如何利用pandas将时间戳格式化日期字符串呢? 例如:将 1357295797 转为 2013-01-04 10:36:37 #!/usr/bin/python # -*- coding: UTF- ...

  2. java 格式化日期字符串

    1. 字符串转换为日期 public Date parseDate(String strDate,String pattern){if(strDate==null || pattern==null | ...

  3. dos远程登录oracle,DOS批处理下 操作telnet实现自动远程登录操作

    刚刚参加工作不久,项目经理把程序发布的任务交给了我,开始几天还有点新的感,不过玩久了,就那几个命令,实在没什么意思,但是还得做,都烦死了.我这个人比较懒,试了N久一个懒人工具终于弄出来了.写出来给大家 ...

  4. DOS批处理的字符串功能

    DOS批处理的字符串功能 批处理有着具有非常强大的字符串处理能力,其功能绝不低于C语言里面的字符串函数集.批处理中可实现的字符串处理功能有:截取字符串内容.替换字符串特定字段.合并字符串.扩充字符串等 ...

  5. JSP开发之JSP 日期处理(SimpleDateFormat格式化日期)案例了解下

    我们使用JSP最重要的优势之一,就是可以使用所有Java  API,我们这次就来看下Java中的Date类,它在java.util包下. 我们要知道Date类有两个构造函数.第一个构造函数使用当前日期 ...

  6. .NET(C#)时间日期字符串(String)格式化转换成Datetime异常报错问题

    .NET(C#)时间日期字符串(String)格式化转换成Datetime异常报错问题 参考文章: (1).NET(C#)时间日期字符串(String)格式化转换成Datetime异常报错问题 (2) ...

  7. C语言如何返回格式化日期时间(格式化时间)?(将日期和时间以字符串格式输出)ctime()、asctime()、localtime()、strftime()

    文章目录 ctime()函数: asctime()函数 获取自定义格式化时间(有bug,当时间为个位数时,没有在前面自动补零) 改成函数接口形式(传入字符指针) 20220107 优化后(能自动补零) ...

  8. JAVA 时间戳与Date类型的相互转换、格式化日期、字符串日期转Date

    时间戳转Date //时间戳 Long timeStamp = 1527767665231L;//java中的Date默认精度是毫秒,13位, //时间戳转Date Date date = new D ...

  9. DOS下格式化移动硬盘

    有的时候移动硬盘出现问题,在Win下没法操作,只能到dos下格式化.以下是用Win自带的diskpart完成格式化. 1  win + r   -> cmd  进入dos 2  diskpart ...

  10. c# 字符串格式化日期时间

    方法一:Convert.ToDateTime(string) string格式有要求,必须是yyyy-MM-dd hh:mm:ss 方法二:Convert.ToDateTime(string, IFo ...

最新文章

  1. Ubuntu iso镜像文件写入U盘
  2. 1097 Deduplication on a Linked List (25 分)_35行代码AC
  3. 程序员最反感的十件事,你有同感吗?
  4. nlinfit函数 matlab,Matlab中拟合函数nlinfit和lsqcurvefit的问题
  5. java线程提高速度_如何在JAVA中减慢线程速度
  6. 计算机科学与技术的专业论述,关于计算机科学专业的论文题目 计算机科学专业论文题目怎样定...
  7. python网格搜索核函数_(转载)Python机器学习笔记GridSearchCV(网格搜索)
  8. 轻松掌握IP子网划分的概念和操作方法
  9. toj 4611 Repairing a Road
  10. 使用tomcat8下的websocket进行web前后端通信
  11. go 输入输出流(bufio)
  12. jQuery笔记——jQuery选择器实例应用
  13. 博客linux系统下载器,linux的下载工具
  14. CImageList用法介绍 (zz)
  15. python二元一次方程组用鸡兔同笼的思路来写编程_应用二元一次方程组——鸡兔同笼教学设计方案...
  16. pyqt5+pyinstaller图标ico制作说明
  17. Linux环境go项目启动提示/usr/bin/ld: cannot find -lxxx
  18. zz 用chrome模拟各种手机
  19. 元胞自动机——应用于森林火灾和传染病场景
  20. amule与firefox4的关联

热门文章

  1. 计算机word平均值函数公式,Excel函数公式:在Word中用公式求和、平均值你会吗?...
  2. python列表替换_Python 列表元素替换
  3. 1926. Nearest Exit from Entrance in Maze刷题笔记
  4. 史上最全综述 | 3D目标检测算法汇总!(单目/双目/LiDAR/多模态/时序/半弱自监督)
  5. 学会用Word制作拼音田字格练习本,简单实用更省钱,宝妈必学
  6. 实验室设备管理系统SQL代码
  7. 吴伯凡-认知方法论-如何做到真正的反思
  8. FFMPEG使用摄像头录像并编码
  9. Golang interface接口深入理解
  10. #学习笔记 使用c语言来制作一个计算器