How can I use an at command in a shell script?

user2177896 picture user2177896 · Mar 16, 2013 · Viewed 17.5k times · Source

I am trying to use the Unix at command (for setting a job to run at a certain time) in a shell script. The time will be specified by user input using getopts and optarg which seem to be working fine, the problem is at. How do I write the at command into the script to run at a certain time based on input from the user?

Thanks, Ryan

Answer

sehe picture sehe · Mar 16, 2013

I'd say

at now +10 minutes <<< "rm -rf /tmp/tobedeleted"

For multiline, consider a "HERE-doc"

at now +10 minutes <<ENDMARKER
rm -rf /tmp/tobedeleted
echo all done | mail -s 'completion notification' [email protected]
ENDMARKER