文件的批处理脚本 Date/Time

Batch Script For File Date/Time

我知道有类似的问题,但我没能做任何工作。我需要根据当前日期和时间检查特定文件的日期和时间。 到目前为止我有

 Set cdate=%date%
 Set filename="c:\myfile"
 If Not Exist %filename% GOTO CREATEFILE
 For %%f In(%filename%) DoSet filedatetime=%%~tf
 If %filedatetime:~0,-9%" == "%cdate% GOTO SHOFILE

我的问题是返回的 cdate 日期中包含星期几,但文件日期没有。示例 cdate= 2015 年 1 月 1 日星期四。我怎样才能让 cdate 没有星期几? 谢谢

你的cdate可以这样设置:

SET cdate=%date:~4%

这有以下输出:

echo %cdate%
01/01/2015
 For %%f In (%filename%) Do Set "filedatetime=%%~tf"
 If "%filedatetime:~0,-9%"=="%cdate:~4%" GOTO SHOFILE

注意需要 space在indo

之后

set "var=value" 语法确保批处理行上的任何尾随 space 不包含在分配给 var 的值中。

if /i "%var%"=="value" 对包含分隔符的 variables/values 进行比较(例如 spaces)如果需要,'/i' 使比较不区分大小写。