我正在编写批处理文件来读取input.txt日期并将日期与昨天的日期进行比较。如果它匹配并且最后一行= EOF则执行我的java程序。到目前为止,我已经吼到了。
ECHO OFF
set "firstLine="
for /f "tokens=*" %%A in (input.txt) do (
If not defined firstLine set "firstLine=%%A"
set Lastline=%%A
)
REM *** FIRST CHECK ***
if "EOF" NEQ "%Lastline%" goto :fail
call :extractDate firstLineDate firstLine
call :convertToJulianDay julianFirstLine firstLineDate
set "today=%date%"
call :convertToJulianDay julianToday today
set /a diff=julianToday-julianFirstLine
REM *** SECOND CHECK ***
if %diff% NEQ 1 goto :fail
exit /b
:fail
echo File doesn't fit
请注意,如果条件匹配,则不会在此处写入java程序。但我只需比较两个日期,日期差异为-1然后执行我已经处理过的程序。
Bellow是input.txt文件的内容。
AML.DATA|01-JUN-2016
PORT_DATA|560538
NDB_AML_AA|43063
NDB_AML_LD|12878
NDB_AML_REPO|496
NDB_AML_TRAN|84596
NDB_AML_JOINT_AC|219873
NDB_AML_CUS_REL_PRTY|43
NDB_AML_BICCODE|108292
CUSTOMER_MASTER|684124
CATEGORY.MASTER|3288
DEPT.MASTER|2527
COUNTRY.MASTER|251
CUSTOMER.STATUS.MASTER|26
INDUSTRY.MASTER|65
JOB.TITLE.MASTER|22
COMPANY.MASTER|121
TRANSACTION.MASTER|3133
RELATION.MASTER|56
NDB_AML_TBILL_TBOND|2845
EOF