:loop FTPLOGON "MySite" FTPCD "directory/to/monitor" FTPDIFF "*" /append IFERROR GOTO interrupt IFNUM= %ftpdifffiles 0 GOTO pause SET incomplete = "" :diff_loop FTPGETDIFF /commitlast IFERROR= $ERROR_READ_EOF GOTO done IFERROR GOTO interrupt SET email_line = %ftpdifffilepath + " " + %ftpdifffiletext + "\n" SET email_body = email_body + email_line GOTO diff_loop :interrupt SET incomplete = "\n\nProcessing halted early. [" + %lasterror + "] " :done SET email_subject = "Changes detected at " + %datetime SET email_body = subject + "\n\n" + email_body + incomplete EMAIL email_body /subject=email_subject SET email_body = "" :pause PAUSE /for=300 GOTO loop