Board logo

标题: [日期时间] 【已解决】bat可以设定日期几号到几号可以运行,超过日期提示已过期 [打印本页]

作者: 986981535    时间: 2023-1-3 15:06     标题: 【已解决】bat可以设定日期几号到几号可以运行,超过日期提示已过期

本帖最后由 986981535 于 2023-1-4 14:05 编辑

请教各位
bat可以获取当前日期

set sj=%date:~0,10%

如何对把当前时间和某个时间对比,如果在某个期间就可以运行,超过或者还没打就不能运行。
作者: 986981535    时间: 2023-1-3 15:21

公司内有的电脑软件比较混乱,现发邮件通知各部门自行卸载,附卸载bat(封装autoit启动控制面板*-程序功能);由用户自行卸载,到期未卸载将发邮件通告。
数量较多3000多个软件。
作者: bat1152    时间: 2023-1-3 15:22

本帖最后由 bat1152 于 2023-1-3 16:00 编辑

好像只有纯数字才能用if语句比较哦。
可我觉得很麻烦...
作者: 986981535    时间: 2023-1-3 15:36

回复 3# bat1152


    那不是很麻烦,得一个一个提取去比较,多重嵌套比较。
作者: Batcher    时间: 2023-1-3 17:51

回复 2# 986981535


    什么系统,Win7? Win10?
作者: Batcher    时间: 2023-1-4 10:44

回复 1# 986981535
  1. @echo off
  2. set "BeginDate=2023-01-05"
  3. set "EndDate=2023-01-10"
  4. for /f "delims=" %%i in ('powershell -c "Get-Date -UFormat '%%Y-%%m-%%d'"') do (
  5.     set "SysDate=%%i"
  6. )
  7. if "%SysDate%" lss "%BeginDate%" (
  8.     echo 未到可执行期间
  9. ) else if "%SysDate%" gtr "%EndDate%" (
  10.     echo 已过可执行期间
  11. ) else (
  12.     goto :Exec
  13. )
  14. pause
  15. goto :eof
  16. :Exec
  17. echo 需要执行的代码放在下面
  18. pause
复制代码

作者: 986981535    时间: 2023-1-4 14:04

回复 5# Batcher


    win10,下面那个代码测试可行,感谢。




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2