Search code examples
linuxshellunixat-job

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


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


Solution

  • 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