Welcome guest. Before posting on our computer help forum, you must register. Click here it's easy and free.

Author Topic: Resume processing of files based on the date of the last processed files  (Read 3856 times)

0 Members and 1 Guest are viewing this topic.

_unknown_

    Topic Starter


    Beginner

    • Experience: Beginner
    • OS: Windows 7
    The script indicated in here will merge files from the in_path and now will successfully move the merged files only to another directory which is the proc_path. The goal now is to merge the files based on the date of the last processed files and so on. So that whenever the system is down and you weren't able to process the files let's say for one week, it will just check for the last date where it stop and process it and then process the next date and so on. But how can I do that? Any idea?

    Thank you!

    Code: [Select]
    @echo on
    setlocal EnableDelayedExpansion

    rem Modify following variables
    set "in_path=E:\Proc\Pro\"
    set "out_path=E:\Proc\Mer"
    set "proc_path=E:\Proc\Proc_Pro"

    rem DON'T modify the following variables
    set "yearDay="
    set "fileList="
    set "numFiles=0"

    md %out_path%
    md %proc_path%

    rem Process all *.tif files in input path
    pushd "%in_path%"
    for %%a in (*.tif) do (
       set "fileName=%%a"
       rem If the YearDay in this file is the same of previous one
       if "!fileName:~1,7!" equ "!yearDay!" (
          rem Join this filename to previous list
          set "fileList=!fileList!!fileName! "
          set /A numFiles+=1
       ) else (
          rem Merge the files in the list if there are more than 2, in the out_path leaving only TYYYYDDD.L2_LAC.Tera.tif
          if !numFiles! gtr 2 (
             gdal_merge.py -n 0 -a_nodata -32767 -of GTiff -o %out_path%\T!yearDay!.L2_LAC.Tera.tif !fileList!
             rem Move processed files to a different directory
             set "fileList=!fileList:~0,-1!"
             move !fileList: =,! "%proc_path%"
          )
          rem And start a new YearDay and fileList
          set "yearDay=!fileName:~1,7!"
          set "fileList=!fileName! "
          set numFiles=1
       )
    )
    rem Merge the files in the last list if there are more than 2
    if !numFiles! gtr 2 (
       gdal_merge.py -n 0 -a_nodata -32767 -of GTiff -o %out_path%\T!yearDay!.L2_LAC.Tera.tif !fileList!
       set "fileList=!fileList:~0,-1!"
       move !fileList: =,! "%proc_path%"
    )
    popd
    « Last Edit: November 30, 2014, 08:27:29 PM by _unknown_ »

    Squashman



      Specialist
    • Thanked: 134
    • Experience: Experienced
    • OS: Other
    Re: Resume processing of files based on the date of the last processed files
    « Reply #1 on: November 30, 2014, 08:39:13 PM »
    Not sure why you are posting this here when you already got the original code from DosTips.com.  The helpers over there already know what the code does and can probably do a better job of helping you with any changes you need.

    _unknown_

      Topic Starter


      Beginner

      • Experience: Beginner
      • OS: Windows 7
      Re: Resume processing of files based on the date of the last processed files
      « Reply #2 on: November 30, 2014, 08:43:16 PM »
      Not sure why you are posting this here when you already got the original code from DosTips.com.  The helpers over there already know what the code does and can probably do a better job of helping you with any changes you need.

      But I still need help with this. The question above is the last thing that I still need in order to have it done. And I don't know how to do it.