我有一个file.txt
在Windows
,我想检查文件的修改日期是否等于if statement
的某个日期。它会检查batch file
。获取文件的修改日期 - 条件Windows批处理
这是主意,让德日期:
for %a in (file.txt) do set FileDate=%~ta
但我需要与条件,如果条件为真,这将执行SQLCMD命令。
我有一个file.txt
在Windows
,我想检查文件的修改日期是否等于if statement
的某个日期。它会检查batch file
。获取文件的修改日期 - 条件Windows批处理
这是主意,让德日期:
for %a in (file.txt) do set FileDate=%~ta
但我需要与条件,如果条件为真,这将执行SQLCMD命令。
你能尝试:
set date_today=%date:~0,2%/%date:~3,2%/%date:~6,4%
for %%x in ("your_file.txt") do set date_of_file=%%~tx
IF %date_of_file:~0, 10% == %date_today% goto same
goto notsame
:same
your sqlcmd command
:notsame
another thing
当然,你会修改%date_today%到你想要的日期。
你期望做的事对我来说不是很清楚。
你的file.sql包含一个查询,它只是返回一个日期的行吗?
所以我认为你应该执行file.sql(用一些sqlcmd),然后得到查询的输出,最后在你的批处理文件中用IF语句进行比较。我当然可以帮助你,但我不确定你想要什么。
谢谢,这就是主意! %%〜tx的含义是什么? – user1911
如何在If语句中添加更多条件? – user1911
'%%〜t'表示变量的日期/时间,在这里是'x'。所以你有'%%〜tx',但如果你改变'for %% x',你可以有其他任何东西。 %%在批处理脚本中使用;对于cmd.exe中的简单命令,您只能使用一个%:PS:在这里查看我所说的精确度,您将更好地理解for命令的用法:http://ss64.com/nt /syntax-args.html – AymericB