批处理bat计算前N个月第一天的日期
【方案一】BAT + date.exe(GNU)
@echo off
rem 调用GNU for Win32的date.exe
set "gnuDate=C:/test/date.exe"
rem 指定月数
set MonthsAgo=1
for /f %%a in ('%gnuDate% -d "%MonthsAgo% months ago" "+%%Y-%%m-01"') do (
set "DstDate=%%a"
)
)
echo,%DstDate%
pause
【方案二】BAT + VBS
@echo off
rem 指定月数
set MonthsAgo=2
>"%temp%/DateCalculate.vbs" echo strLastDate=DateAdd("m", -%MonthsAgo%, Date)
>>"%temp%/DateCalculate.vbs" echo strFmtDate=Right(Year(strLastDate),4) ^& Right("0" ^& Month(strLastDate),2) ^& "01"
>>"%temp%/DateCalculate.vbs" echo WScript.Echo strFmtDate
for /f %%a in ('cscript /nologo "%temp%/DateCalculate.vbs"') do (
set "DstDate=%%a"
)
set DstDate=%DstDate:~0,4%-%DstDate:~4,2%-%DstDate:~6,2%
echo,%DstDate%
pause
相关推荐
-
批处理bat计算前N个月第一天的日期
[方案一]BAT + date.exe(GNU) 复制代码 代码如下: @echo off rem 调用GNU for Win32的date.exe set "gnuDate=C:/test/date.exe" rem 指定月数 set MonthsAgo=1 for /f %%a in ('%gnuDate% -d "%MonthsAgo% months ago" "+%%Y-%%m-01"') do ( set "DstDa
-
批处理bat计算两个时间差
这个是脚本代码[保存为etime.bat放在当前路径下即可: 复制代码 代码如下: :etime <begin_time> <end_time> <return> rem 所测试任务的执行时间不超过1天 // 骨瘦如柴版 setlocal&set be=%~1:%~2&set cc=(%%d-%%a)*360000+(1%%e-1%%b)*6000+1%%f-1%%c&set dy=-8640000 for /f "delims=: t
-
批处理bat计算上个月最后一天的日期
[方案一]BAT + date.exe(GNU) 复制代码 代码如下: @echo off rem 调用GNU for Win32的date.exe set "gnuDate=C:/test/date.exe" for /f %%a in ('%gnuDate% "+%%Y%%m01"') do ( for /f %%h in ('%gnuDate% -d "%%a 1 days ago" "+%%Y-%%m-%%d"
-
批处理bat函数:大数字加减乘除、时期时间计算、数字排序、进制转换等
目录 计算任意位数的正整数加法 计算1000位以内的正整数减法 计算任意位数的正整数乘法 500位内整数除法函数 计算时间差 可以处理0开头的数.重复数及200位以内的超大整数(封装) 计算指定天数 前/后 的日期及星期 进制转换(函数) 1.任意进制互转 二进制转十六进制(封装)(通过4位一段转换,可处理超大数) 十六进制转二进制(封装)(通过4位一段转换,可处理超大数) 二进制转十进制(封装)(只能处理cmd范围内的数,小巧方便代码中调用) 获取10进制数(含负数)的 原码.反码.补码(未封
-
Python计算一个给定时间点前一个月和后一个月第一天的方法
本文实例讲述了Python计算一个给定时间点前一个月和后一个月第一天的方法.分享给大家供大家参考,具体如下: python如何获取一个时间点的前一个月和后一个月,网上虽然有很多教程,但是本人感觉太杂了而且不太好用,研究一番之后决定提供一种方法和思路. #!/usr/bin/env python # -*- coding: utf-8 -*- import datetime import calendar time = datetime.date(2017, 7, 20) #年,月,日 #求该月第
-
批处理bat将txt文本第一列内容相同的行的最后一列的数字相加
小弟不材,想了好几天没写出来,才来论坛求助,希望各位高手帮帮忙解下题 ,在此先谢谢各位了- 比如,aaa.txt 内容如下 11111,20150430,10 11111,20150430,20 11111,20150430,30 22222,20150430,40 33333,20150430,50 44444,20150430,60 44444,20150430,70 55555,20150430,80 66666,20150430,90 66666,20150430,100 77777,2
-
Java实现获取某年某月第一天/最后一天的方法
本文实例讲述了Java实现获取某年某月第一天/最后一天的方法.分享给大家供大家参考,具体如下: Java获取某年某月的第一天 设计源码 FisrtDayOfMonth.java: /** * @Title:FisrtDayOfMonth.java * @Package:com.you.freemarker.model * @Description:获取某年某月的第一天 * @author:Youhaidong(游海东) * @version V1.0 */ package com.you.fre
-
批处理BAT脚本中set命令的使用详解(批处理之家Batcher)
目录 一.使用 set 命令进行赋值 1.等号两边不要有空格 2.变量值包含特殊字符需用双引号 3.避免使用系统环境变量同名的自定义变量 4.语法可行但不推荐使用 二.使用 set /p 命令读取输入 三.使用 set /a 命令进行数学运算(1) 四.使用 set /a 命令进行数学运算(2) 五.使用 set 命令进行字符串截取 六.使用 set 命令进行字符串替换 七.set命令知识点(1)把命令结果赋值给变量 八.set命令知识点(2)显示以某字符开头的变量 一.使用 set 命令进行赋
-
自动以管理员身份运行批处理bat文件(vbs与bat两种方法)
但是,批处理脚本不会默认已管理员身份运行,一般情况下,我会将脚本命名为"XXXXXX(请右键点击,用管理员身份运行!).bat",但总有些用户会忽略这条提示,直接运行,此时由于权限不足,导致脚本运行失败. 我们可以使用一种变通的方法,让bat启动时,首先调用vbs脚本,通过vbs脚本,以管理员身份调用该bat的 runas 部分 我们的脚本可以写在runas 下,这样就点击该bat脚本,就可以已管理员身份运行了 示例代码如下 @ECHO OFF setlocal EnableDelay
-
计算2000年01月01日起到指定日的天数
这是一个计算2000年01月01日起到指定日的天数的函数 <br> (算头也算尾)日期格式为:YYYY-MM-DD <br> <?php // 计算从2000年01月01日开始到某日的天数 function cal_start2end($end_day,$start_day) { $start_day=ereg_replace("-","",$start_day); $end_day=ereg_replace("-&qu
随机推荐
- 用VB生成DLL封装ASP连接数据库的代码
- Java获取网络文件并插入数据库的代码
- 32位和64位皆适用的MyEclipse安装教程
- php共享内存段示例分享
- asp 实现视频显示的效果函数
- 动态CSS,换肤技术
- Struts2修改上传文件大小限制方法解析
- js实现的拖动后记录轨迹并运行
- jquery 按钮状态效果 正常、移上、按下
- Android 软键盘弹出时把原来布局顶上去的解决方法
- Python中tell()方法的使用详解
- 正确使用MySQL update语句
- JQuery 无废话系列教程(一) jquery入门 [推荐]
- Nginx服务器搭建和基本配置详解
- Java中获取子字符串的几种方法示例
- 详解如何用spring Restdocs创建API文档
- 深入DropDownList用法的一些学习总结分析
- Kotlin开发实战之hello world
- C++中4种类型转换方式 cast操作详解
- 破解DHCP网络服务之迷