批处理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
随机推荐
- JSP的response对象的实例详解
- AJAX和JSP实现的基于WEB的文件上传的进度控制代码第1/2页
- 在windows下给新硬盘分区图解_图解硬盘分区
- 详解IOS图层转场动画
- asp.net中执行存储数据操作时数据被自动截取的一种情况
- 国外十大最流行的PHP框架排名
- PHP使用DirectoryIterator显示下拉文件列表的方法
- php使用curl和正则表达式抓取网页数据示例
- Python列出一个文件夹及其子目录的所有文件
- MySQL数据库 1067错误号的解决方法
- js改变img标签的src属性在IE下没反应的解决方法
- 基于Ajax实现下拉框联动显示数据
- javascript简写常用的12个技巧(可以大大减少你的js代码量)
- C语言数据结构算法之实现快速傅立叶变换
- Android自定义实现BaseAdapter的普通实现
- Android6.0指纹识别开发实例详解
- 比较完整的Nginx配置文件nginx.conf常用参数中文详解
- Java中快速把map转成json格式的方法
- AJAX实现瀑布流触发分页与分页触发瀑布流的方法
- js实现有时间限制消失的图片方法