JSI Tip 8568. Windows 2000 super AT-like job scheduler freeware.


Windows XP has a full featured command-line scheduler.

For Windows 2000, download ATT.zip, a super AT-like job scheduler, which includes periodicities such as first Monday, last Tuesday, last day of month, every three months, etc...

When you type att /?, you receive:

Version 0.41, Copyright (C)2001, Frank P. Westlake.
Design assistance from Phil Robyn.

Adds, deletes, displays, and enumerates Schedule service jobs.

Add a job:
 ATT \[\\server\] \[+\]time \[/i\] \[/n|e|r:schedule\] "command"
 ATT \[\\server\] \[+\]time ON DateList \[/i\] \[/n|e|r:schedule\] DO "command"
Delete a job:
 ATT \[\\server\] /d\[vy\] JobIdList | /DeleteAll
Display a job:
 ATT \[\\server\] JobIdList
Enumerate schedule:
 ATT \[\\server\] \[/bh\] \[/l \[JobIdList\]\] \[/c\[:twmfi\]j/#\] \[/o\[i|j|t\]\] \[/f\[TEPI\]

/b           Buffer the output. Press F1 for help when in the buffer.
/c\[:list\]    Selects the columns to print and the order to print them in. The
             switch alone will default to "Twmfij". 'list' may be stored in
             the environment variable %CMD:ATT%.
               t=Time(HH:MM:SS)    w=Weekly schedule   m=Monthly schedule
               T=Time(HH:MM:SS.ms) f=Flags             i=ID
               j=Job               /=Newline           #=Tab
/d           Delete the specified range of jobs.
/deleteAll   Delete all jobs. Requires user verification or '/y'.
/e:  /n:     Specifies the job schedule. Follow /e: or /n: with a comma
             delimited list of days for the job to run. /e indicates that the
             job should run on every instance of that day and /n indicates that
             it should run only on the next instance. For example:
             /n:M,Tu,W,Th,F,S,Su  or  /e:M-W,S,1-10,15,-0  or
             /n:M-1,T1,W-2,Th2 (last M, 1st T, 2nd to last W, and 2nd Th)
/f           List only jobs with one or more of the specified flags.
/h           No column headings with the enumerated schedule.
/i           The job should run interactively, not in the background.
/l           List the schedule. This is the default and the switch is only
             necessary if JobIdList is included.
/o           Sorts entries by the specified column.
               i=Id (default)      j=Job               t=Time
/r:          Repeat multiple units of Y, M, D, h, m, or s. Format:
             \[periodicity\]unit\[repetitions\] i.e.: /r:6D2 /r:6D /r:D2
/v           Verify before deleting a job.
/y           Confirms that ALL jobs should be deleted (use with /DeleteAll).
DateList     A date or a range of dates. For example: 2001-11-12 or
             *-\[1,4,7,10\]-\[1,5-9,15,30\], where an '*' implies all.
JobIdList    A job or a list of jobs which may include ranges. For example:
             ATT 1,2-4,6,8-11,13
time         A time of the form \[+\]HH:MM\[:SS\[.ms\]\] or \[+\]H:MM\[:SS\[.ms\]\]\[a|p\]m
             for absolute and relative times or +N\[h|m|s\] for relative times
             where 'N' is an integer and 's' is the default. The '+' indicates
             a relative time which will be added to the current time.

- AT.EXE switches may also be used (/every, /next. /delete, /interactive).
- When adding a job, the entire command line beyond the last recognized switch
will be considered as part of the command to be scheduled. Special characters
must either be escaped or the entire command string enclosed in quotes:
  ATT +5 /i /e:M ListJobs.cmd ^> file
  ATT +5 /i /e:M "ListJobs.cmd > file"

  ATT 00:00 ON *-01-01 DO HappyNewYear.cmd
  ATT +1m /r:m5 Ping

Hide comments


  • Allowed HTML tags: <em> <strong> <blockquote> <br> <p>

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.