Home >Operation and Maintenance >Linux Operation and Maintenance >Scheduled tasks under Linux - scheduled tasks that are executed only once
Scheduled tasks are a very good function provided by the operating system. We often use scheduled tasks to handle some things, such as backing up website data regularly every day, executing data statistics programs every month, and monitoring the operation of the server ( Send a message to the administrator to notify the administrator when an error occurs), etc. These all require scheduled tasks to complete.
Scheduled tasks under Linux are divided into two categories: scheduled tasks that are executed only once and scheduled tasks that are executed periodically. Today, let’s take a look at scheduled tasks that are executed only once. Scheduled tasks that are executed periodically will be described in the next article.
atd service
A scheduled task that is only executed once, we complete it through the at command. If you want to execute the at command, you need to first Start the atd service. The command to check the running status of the atd service and start the atd service is as follows:
# 查看atd服务状况 # systemctl status atd # 开启atd服务 # systemctl start atd
at permission management
When using at to generate new tasks , the task will be placed in the /var/spool/at directory in the form of a text file.
# ll /var/spool/at total 8 -rwx------ 1 root root 2890 Nov 7 16:30 a0000201981b23 <===== at产生的文件 drwx------ 2 daemon daemon 4096 Nov 7 16:27 spool
For the permission management of at, the system has two special files to specify. These two files are actually the same as the black and white lists we understand. These two files are /etc/at.deny (blacklist) and /etc/at.allow (whitelist). The system default at.deny content is empty, and /etc/at.allow system default does not exist. If neither file exists, only the root user can use the at command.
Detailed explanation of the at command
Let’s take a look at how to use the at command.
Set scheduled tasks
Use the at command to set scheduled tasks at [-m] time, commonly used time format - HH:MM YYYY -MM-DD, in addition, you can also use the English now 1 minutes similar form settings.
# at 17:00 2020-11-11 at> date >> /root/at.txt at> <EOT> <=== 这里输入ctrl+d来结束 job 3 at Wed Nov 11 17:00:00 2020 # at now +5 minutes at> date >> /root/at.txt at> <EOT> job 4 at Sat Nov 7 17:01:00 2020
View scheduled tasks
Use the -l option to view scheduled tasks. If you want to see specific commands, you can use the -c option. In addition, you can also use the atq command to view it.
# at -l 6 Sat Nov 7 17:13:00 2020 a root 3 Wed Nov 11 17:00:00 2020 a root # atq 6 Sat Nov 7 17:13:00 2020 a root 3 Wed Nov 11 17:00:00 2020 a root
Remove scheduled tasks
Planned tasks that have not yet been executed can be deleted through at -d or atrm.
# at -d 3 # atrm 6
Another benefit of using at to generate scheduled tasks is that offline management can be completed.
The above is the detailed content of Scheduled tasks under Linux - scheduled tasks that are executed only once. For more information, please follow other related articles on the PHP Chinese website!