找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 24209|回复: 10

[日期时间] 请教bat判断星期值,然后执行操作

[复制链接]
发表于 2021-12-9 13:17:59 | 显示全部楼层 |阅读模式
@echo off
望大佬赐教,先在这里感谢您了,谢谢
要求:
检查今天星期几,然后根据星期不同执行不同的程序。
网上找了好几种方法都不行

下面的几种方法都不能正确判断当前是星期几

1、测试结果不可行
@echo off
if %date:~-1%==一 goto choice1
if %date:~-1%==二 goto choice2
if %date:~-1%==三 goto choice3

2、测试结果不可行
@echo off
::获取系统时间的星期值
set day=%date:~11,14%
if "%day%"=="三" goto choice2
if "%day%"=="四" goto choice6

3、测试结果不可行
if %date:~13%==一 goto choice1

4、测试结果不可行
@echo off
if %date:~-3%==星期五 goto zzz1
if %date:~-3%==星期六 goto zzz2

以上方法都不能正确判断当前是星期几,如何写,望大佬赐教,先在这里感谢您了,谢谢谢谢!
发表于 2021-12-9 14:51:41 | 显示全部楼层
你把你的代码完整的贴出来看看。
 楼主| 发表于 2021-12-9 15:07:49 | 显示全部楼层
回复 2# qixiaobin0715


    @echo off
if %date:~-1%==一 goto choice1
if %date:~-1%==二 goto choice2
if %date:~-1%==三 goto choice3
if %date:~-1%==四 goto choice4
if %date:~-1%==五 goto choice5
if %date:~-1%==六 goto choice6
if %date:~-1%==日 goto choice7

timeout /t 2 /nobreak

::【注释】周1执行的任务
:choice1
echo 周1执行的任务操作完毕。
pause>nul&&goto :eof

::【注释】周2执行的任务
:choice2
echo 周2执行的任务操作完毕。
pause>nul&&goto :eof

::【注释】周3执行的任务
:choice3
echo 周3执行的任务操作完毕。
pause>nul&&goto :eof

::【注释】周4执行的任务
:choice4
echo 周4执行的任务操作完毕。
pause>nul&&goto :eof

::【注释】周5执行的任务
:choice5
echo 周5执行的任务操作完毕。
pause>nul&&goto :eof

::【注释】周6执行的任务
:choice6
echo 周6执行的任务操作完毕。
pause>nul&&goto :eof

::【注释】周日执行的任务
:choice7
echo 周日执行的任务操作完毕。
pause>nul&&goto :eof

评分

参与人数 1技术 +1 收起 理由
word + 1 感谢分享

查看全部评分

发表于 2021-12-9 15:23:13 | 显示全部楼层
本帖最后由 for_flr 于 2021-12-9 15:52 编辑

脚本没错,你自己加个echo;%date%看看是不是机器上显示的日期格式不一样。
用powershell也行,更简单。
  1. switch (get-date -uformat %a){
  2. 一{"some commands for monday"}
  3. 二{echo "tuesday"}
  4. 三{"wednesday"}
  5. 四{"today is thursday"}
  6. 五{"fri."}
  7. 六{"sat."}
  8. 日{"sun."}
  9. }
复制代码
 楼主| 发表于 2021-12-9 15:39:56 | 显示全部楼层
回复 4# for_flr

执行后cmd显示如下:
    2021-12-09
周1执行的任务操作完毕。
发表于 2021-12-9 15:57:05 | 显示全部楼层
回复 5# 0475


  【方案汇总】批处理标准化获取当前系统日期时间(20190315更新)
http://www.bathome.net/viewthrea ... hlight=%C8%D5%C6%DA
发表于 2021-12-9 16:01:08 | 显示全部楼层
一般来说%date%是会显示星期的,你是什么系统居然不显示星期。
 楼主| 发表于 2021-12-9 16:18:19 | 显示全部楼层
回复 7# qixiaobin0715


    Windows 11系统
发表于 2021-12-9 17:11:55 | 显示全部楼层
回复 8# 0475


    现在 11 卡<资源管理器>和右键吗?  11的<桌面窗口管理程序>占GPU多不多(开个视频可以看结果)?
 楼主| 发表于 2021-12-9 22:01:18 | 显示全部楼层
回复 9# xczxczxcz


    不卡,我自己封装的win11-22000.318,就是个别程序兼容的不太好,偶尔卡死
发表于 2021-12-9 22:07:22 | 显示全部楼层
回复 1# 0475
  1. @echo off
  2. powershell -c "Get-Date -UFormat '%%u'"
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-20 17:55 , Processed in 0.032915 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表