While working on Linux systems we preferred crontab for scheduling jobs generally. There are another utility
- Read This => Examples to schedule recurring tasks with crontab
At command can be useful for shutdown system at specified time, Taking one time backup, sending email as reminder at specified time etc. This article will help you to understand the working of at command with useful examples.
Commands used with at:
- at : execute commands at specified time.
- atq : lists the pending jobs of users.
- atrm : delete jobs by their job number.
1. Schedule first job using at command
Below example will schedule “sh backup.sh” command to be executed on next 9:00 AM once.
# at 9:00 AM at> sh backup.sh at> ^d job 3 at 2013-03-23 09:00
Use ^d to exit from at prompt.
You can also use following option to schedule job. The below command will run “sh backup.sh” at 9:00 in the morning.
# echo "sh backup.sh" | at 9:00 AM
2. List the scheduled jobs using atq
When we list jobs by root account using
atq , it shows all users jobs in result. But if we execute it from non root account, it will show only that users jobs.
# atq 3 2013-03-23 09:00 a root 5 2013-03-23 10:00 a rahul 1 2013-03-23 12:00 a root
First filed: job id
Second filed: Job execution date
third filed: Job execution time
Last field: User name, under which job is scheduled.
3. Remove scheduled job using atrm
You can remove any at job using
atrm with their job id.
# atrm 3 # atq 5 2013-03-23 10:00 a rahul 1 2013-03-23 12:00 a root
4. Check the content of scheduled at job
atq command only shows the list of jobs but if you want to check what script/commands are scheduled with that task, below example will help you.
# at -c 5
In above example 5 is the job id.
Examples of at Command:
Example 1: Schedule task at coming 10:00 AM.
# at 10:00 AM
Example 2: Schedule task at 10:00 AM on coming Sunday.
# at 10:00 AM Sun
Example 3: Schedule task at 10:00 AM on coming 25’th July.
# at 10:00 AM July 25
Example 4: Schedule task at 10:00 AM on coming 22’nd June 2015.
# at 10:00 AM 6/22/2015 # at 10:00 AM 6.22.2015
Example 5: Schedule task at 10:00 AM on same date at next month.
# at 10:00 AM next month
Example 6: Schedule task at 10:00 AM tomorrow.
# at 10:00 AM tomorrow
Example 7: Schedule task at 10:00 AM tomorrow.
# at 10:00 AM tomorrow
Example 8: Schedule task to execute just after 1 hour.
# at now + 1 hour
Example 9: Schedule task to execute just after 30 minutes.
# at now + 30 minutes
Example 10: Schedule task to execute just after 1 and 2 weeks.
# at now + 1 week # at now + 2 weeks
Example 11: Schedule task to execute just after 1 and 2 years.
# at now + 1 year # at now + 2 years
Example 12: Schedule task to execute at mid night.
# at midnight
Above job will execute on next 12:00 AM
Thanks for reading this article, I hope you will understand to how to use ‘at’ command in Linux.