定时任务
| 命令 | 含义 | 
| sleep | 等待一定的秒数,不做任何事情。 | 
| watch | 在设定的间隔时间里运行一个程序。 | 
| at | 安排一个在未来某个时间点只运行一次的任务。 | 
| crontab | 安排在未来多个时间点运行的任务。 | 
如果你需要在特定的时间或者固定的间隔里启动程序,Linux 提供了几种不同复杂度的定时工具。
sleep
stdin stdout - file -- opt --help --version*
sleep 时间指定
sleep命令只是简单地等待一定的时间。给定的时间指定可以是整数(表示秒)或者一个整数后面跟着字母s(也是秒)、m(分钟)、h(小时)或者d(天)。比如:
→ sleep 5m 闲置 5 分钟
sleep在你需要延迟一个命令一定的时间时很有用:
→ sleep 10 && echo '十秒过去了。'
(10 秒过去了)
十秒过去了。watch
stdin stdout - file -- opt --help --version*
watch [选项] 命令
watch程序在设定的间隔执行给定的命令,默认是每两秒。命令被传给 shell(所以要确保引用或转义任何特殊字符),结果在全屏模式下显示,这样你就可以方便地观察输出并看到有什么变化。例如,watch -n 60 date 每分钟执行一次 date 命令,可以看作是一个简易时钟。按 ^C 退出。
有用的选项
| -nseconds | 设置执行间隔时间,以秒为单位。 | 
| -d | 高亮输出中的差异,强调从一个执行到下一个执行过程中有什么变化。 | 
| -g | 当命令产生的输出与上一次执行的输出不同时退出。 | 
at
stdin stdout - file -- opt --help --version
at [选项] 时间指定
at命令在指定的时间只运行一次 shell 命令:
→ at 7am next sunday
at> echo 记得去购物 | mail smith
at> lpr $HOME/shopping-list
at> ^D
<EOT>
job 559 at 2015-09-14 21:30at所能理解的时间指定非常灵活。一般来说,你可以指定:
- • 时间后跟日期(而不是日期后跟时间) 
- • 仅日期(默认为当前时钟时间) 
- • 仅时间(默认为最近的一次,无论是今天还是明天) 
- • 诸如 - now(现在)、- midnight(午夜)或- teatime(16:00)等特殊词语
- • 以上任意一种后面跟一个偏移量,如“+ 3 days” 
日期可以有多种形式:december 25 2015,25 december 2015,december 25,25 december,12/25/2015,25.12.2015,20151225,today,thursday,next thursday,next month,next year等等。月份的名称可以缩写为三个字母(jan,feb,mar等等)。时间也很灵活:8pm,8 pm,8:00pm,8:00 pm,20:00,2000都是等价的。偏移量是一个加号或减号后面跟着空白和一段时间:+ 3 seconds,+ 2 weeks,- 1 hour等等。
如果你没有指定日期或时间的一部分,at会从系统日期和时间中复制缺失的信息。所以“next year”(明年)表示从现在起的一年,“thursday”(星期四)表示接下来的星期四在当前的时钟时间,“december 25”(12月25日)表示接下来的12月25日,“4:30pm”(下午4:30)表示未来最早的一次下午4:30。
你提供给at的命令在执行时才会被 shell 评估,所以通配符、变量和其他 shell 构造直到那时才会展开。而且,你当前的环境(参见 printenv)在每个任务中都会被保留,所以它执行的就像你已经登录了。然而,别名在at任务中不可用,所以不要包含它们。
要列出你的at任务,使用 atq (“at queue”):
→ atq
559  2015-09-14 07:00 a smith要删除一个 at 作业,请运行 atrm(“at 删除”)并附带作业编号:
→ atrm 559
实用选项
| -f文件名 | 从给定文件而不是标准输入中读取命令。 | 
| -c作业编号 | 将作业命令打印到标准输出。 | 
crontab
stdin stdout - file -- opt --help --version
crontab [options] [file]
crontab命令就像 at 命令一样,可以为特定时间安排作业。但是,crontab是用于重复的作业,例如“每月第二个星期二的午夜运行这个命令。”为了实现这一点,你编辑并保存一个文件(称为你的 crontab 文件),它会自动安装在一个系统目录(*/var/spool/cron*)中。每隔一分钟,一个名为 cron的Linux进程就会醒来,检查你的 crontab 文件,并执行任何到期的作业。
- • - → **crontab -e- **在默认编辑器(- $VISUAL)中编辑你的 crontab 文件。
- • - → **crontab -l- **在标准输出上打印你的 crontab 文件。
- • - → **crontab -r- **删除你的 crontab 文件。
- • - → **crontab myfile- **将文件 myfile 安装为你的 crontab 文件。
超级用户可以添加选项 -u 用户名 来处理其他用户的 crontab 文件。
Crontab 文件每行包含一个作业。(空行和以“#”开头的注释行被忽略。)每行有六个字段,用空格隔开。前五个字段指定运行作业的时间,最后一个是作业命令本身。
- • 小时内的分钟数介于 0 和 59 之间的整数。这可以是一个数字( - 30),用逗号隔开的一系列数字(- 0,15,30,45),一个范围(- 20–30),一系列范围(- 0-15,50-59),或一个星号表示“全部”。你也可以用后缀- /- n指定“每- n次”;例如,- */12和- 0-59/12都表示- 0,12,24,36,48(即,每 12 分钟一次)。
- • 一天中的小时数和分钟的语法一样。 
- • 月份中的日期介于 1 和 31 之间的整数;再次,你可以使用序列,范围,范围序列,或星号。 
- • 一年中的月份介于 1 和 12 之间的整数;再次,你可以使用序列,范围,范围序列,或星号。另外,你可以使用三个字母的缩写( - jan,- feb,- mar...),但不能在范围或序列中使用。
- • 一周中的日期介于 0(星期日)和 6(星期六)之间的整数;再次,你可以使用序列,范围,范围序列,或星号。另外,你可以使用三个字母的缩写( - sun,- mon,- tue...),但不能在范围或序列中使用。
- • 要执行的命令任何shell命令,将在你的登录环境中执行,所以你可以引用像 - $HOME这样的环境变量并期望它们能工作。使用你的命令的绝对路径(例如,用 /usr/bin/who 而不是- who)以确保- cron运行的是正确的程序,因为一个 Linux 系统可能有几个同名的程序。
以下是一些示例时间规格:
| *    *    *    *    * | 每分钟 | 
| 45   *    *    *    * | 每小时后的 45 分钟(1:45,2:45 等) | 
| 45   9    *    *    * | 每天上午 9:45 | 
| 45   9    8    *    * | 每个月的第八天上午 9:45 | 
| 45   9    8    12   * | 每年 12 月 8 日上午 9:45 | 
| 45   9    8    dec  * | 每年 12 月 8 日上午 9:45 | 
| 45   9    *    *    6 | 每周六上午 9:45 | 
| 45   9    *    *    sat | 每周六上午 9:45 | 
| 45   9    *    12   6 | 每年 12 月的每个周六上午 9:45 | 
| 45   9    8    12   6 | 每年 12 月的每个周六以及 12 月 8 日上午 9:45 | 
如果命令在执行时产生任何输出,cron 会将其发送到你的邮箱(或更准确地说,发送到该 crontab 文件的所有者的邮箱)。
 
                         
                                     
                                             
                                             
                                             
                                             
                                             
                                             
                                             
                                             
             
                        
                         
                     
                     
                     
                     
                     
                     
                     
                     
                    
                                
                                    匿名                                
                             
                            2025-10-22
                        
                    
盖楼盖楼!
                                
                                    匿名                                
                             
                            2025-08-11
                        
                    
沙发沙发
                                
                                    匿名                                
                             
                            2025-08-10
                        
                    
https://at.oiik.cn/bing.html
                                
                                    匿名                                
                             
                            2025-02-21
                        
                    
实用,我在开发https://minmail.app/时候使用到了
                                
                                    王飞翔                                
                             
                            2024-12-30
                        
                    
亲爱的朋友:您好!中国疫情持续蔓延,很多人症状非常严重持久不愈,医院人满为患,各年龄段随地倒猝死的现象暴增,多省感染手足口、甲流、乙流、支原体、合胞及腺病毒的儿童不断攀升,目前各种天灾人祸,天气异象频发。古今中外的很多预言都说了这几年人类有大灾难,如刘伯温在预言中说 “贫者一万留一千,富者一万留二三”,“贫富若不回心转,看看死期到眼前”, 预言中也告诉世人如何逃离劫难的方法,真心希望您能躲过末劫中的劫难,有个美好的未来,请您务必打开下方网址认真了解,内有躲避瘟疫保平安的方法。网址1:https://github.com/1992513/www/blob/master/README.md?abhgc#1 网址2:bitly.net/55bbbb 网址3:https://d3ankibxiji86m.cloudfront.net/30gj 如打不开请多换几个浏览器试
                                
                                    匿名                                
                             
                            2024-12-12
                        
                    
Backdata 搜索引擎网址提交入口:https://backdata.net/submit-site.html