windows - 我们可以比较两个有日期的文件并找到较新的日期吗
问题描述
我有2
纯文本文件,一个在本地 PC 上,另一个在服务器上。(文件只存储发布日期,例如02/02/2018
)。
我想编写一个Windows 批处理文件来检查服务器上的文本文件是否比用户机器上的日期新,并基于此从服务器下载新文件。
我使用过fc并且工作正常,但问题是要维护更新的文件集。
请告知这是否可以实现。
解决方案
您的样品日期不明确。
要比较日期(不转换为日期时间类型或序列号),您需要按 yyyy,MM,dd 排序。
你的02/02/2018
本意是MM/dd/yyyy
什么?或者dd/MM/yyyy
?
:: Q:\Test\2019\05\02\SO_55934933.cmd
@Echo off
Call :GetDate Srv "\\server\share\folder\file.txt"
Call :GetDate PC "X:\folder\file.txt"
if not defined Srv (Echo couldn't obtain server date &pause&Exit /b 1)
if not defined PC (Echo couldn't obtain local PC date&pause&Exit /b 1)
if %Srv% geq %PC% (
Echo Server date %Srv% newer or equal to PC date %PC%
) else (
Echo Server date %Srv% older than PC date %PC%
)
Goto :Eof
:GetDate and reverse order
set /p "Dt="<%2
:: assuming dd/MM/yyyy
For /f "tokens=1-3delims=/" %%D in ("%DT%") Do Set "%1=%%F%%E%%D"
:: assuming dd/MM/yyyy
:: For /f "tokens=1-3delims=/" %%D in ("%DT%") Do Set "%1=%%F%%D%%E"
该批次包含两个变体,MM/dd/yyyy
已被注释掉。
样本输出:
> Q:\Test\2019\05\02\SO_55934933.cmd
Server date 20180203 newer or equal to PC date 20180202
推荐阅读
- jquery - 模态内容刷新和提交
- javascript - javascript中的冒泡排序无法运行?
- python - 显然我没有在字符串格式化期间转换所有参数,但我不知道出了什么问题
- excel - 将一张表中的表格数据引用到另一张表中的单元格
- python - 无法发布日期时间类型python
- c - 为什么在程序中两次使用gets()来获取两个不同数组的输入,即使是第一个数组也只返回第二个输入?
- android - 有没有办法绕过 MI 设备中的“自动启动”在 android 中运行后台服务?
- design-patterns - 责任链模式只是一种矫枉过正吗?处理程序列表可以完成相同的任务
- dm-script - 有没有dm脚本命令来控制GIF影院模式
- c# - 以存储库模式和工作单元批量插入数据库,性能最佳