According to the man pages for "at" (or batch):
The working directory, the environment (except for the variables
TERM, TERMCAP, DISPLAY, and _), and the umask are retained from the
time of invocation.
But, oddly enough, at the time of actual invocation it seems not to know
this information:
Script started on Mon Oct 5 12:09:21 2009
$ echo echo hello >ee
$ batch -f ee
Cannot open input file: No such file or directory
$ batch -f ~/ee
commands will be executed using /bin/ksh
job 1254766194.E at Mon Oct 5 12:09:54 2009
$ exit
Script done on Mon Oct 5 12:10:00 2009
If the -f option requires a non-relative path spec. for the file, the
manual does not say so, as far as I can see.
Tested on 4.5 and 4.6.
Austin