1 crond服务
crondtab命令有crond服务支持。crond进程会定期检查是否有要执行的任务,如果有,则自动执行。
哈喽,大家好,我是[有勇气的牛排](全网同名)🐮🐮🐮
有问题的小伙伴欢迎在文末[评论,点赞、收藏]是对我最大的支持!!!。
启动命令(重启)
service crond restart
开机自启动
chkconfig crond on
2 crondtab命令
2.1 crondtab选项说明
字段 |
含义 |
-u user |
用来设定某个用户的crontab服务,常见用户root |
-e |
编辑某个用户的crontab文件内容,如果不指定用户,则为当前用户的crontab文件内容 |
-l |
形式某用户的crontab文件内容,如果不指定用户,则为当前用户的crontab文件内容 |
-r |
从 /var/spooll/cron 删除某用户的crontab文件,如果不指定用户,则为当前用户 |
-i |
在删除crontab文件是,给出提示 |
2.2 编辑任务文件
crontab -e
星号含义
文件格式: 分钟 小时 天 月 星期(用*代替每隔位置)
字段 |
含义 |
范围 |
第1个 * |
一小时当中的第几分钟(minute) |
0~59 |
第2个 * |
一天当中的第几小时(hour) |
0~23 |
第3个 * |
一个月当中的第几天(day) |
1~31 |
第4个 * |
一年当中的第几个月(month) |
1~12 |
第5个 * |
一周当中的星期几(week) |
0~7(0和7均代表周日) |
Crontab 表达式规则:
注:Linux中没有second,最小是miniute。
* * * * *
- - - - -
| | | | |
| | | | +----- 星期中星期几 (0 - 6) (星期天 为0)
| | | +---------- 月份 (1 - 12)
| | +--------------- 一个月中的第几天 (1 - 31)
| +-------------------- 小时 (0 - 23)
+------------------------- 分钟 (0 - 59)
特殊符号
*
星号:代表任何时间(每分钟/每天/每月…)
,
逗号:代表不连续时间
# 每天 8:05、12:05、17:05 执行
5 8,12,17***
-
中杠:代表连续时间
# 每 周一到周五,1:00 执行
0 1 ** 1-5
/
正斜线:代表每隔多久执行一次
# 每 30分钟 执行
*/30****
当文件编辑完成后,任务就会保存在 /var/spool/cron
目录中,每个用户的的定时任务用当前用户名进行区分,保存即生效。
2.3 crondtab常用案例综合
crontab -e
# 每天 8:05、12:05、17:05 执行
5 8,12,17 * * *
# 每 周一到周五, 1:00 执行
0 1 ** 1-5
# 每 30分钟 执行
*/30 * * * *
# 每天 6点 每隔10分钟执行一次
*/10 6 * * *
# 每天 11:55 执行一次
55 11 * * *
3 任务编辑
编辑任务
crontab -e
bash
# 每分钟执行一次,输出写到/tmp/test.txt文件中
*/1 * * * * /bin/echo "666" >> /tmp/test.txt
python
# 每分钟执行一次,输出写到/tmp/pytest.txt文件中
*/1 * * * * python /tmp/my.py >> /tmp/pytest.txt
<h2><a id="1_crond_0"></a>1 crond服务</h2>
<p>crondtab命令有crond服务支持。crond进程会定期检查是否有要执行的任务,如果有,则自动执行。</p>
<p><font face="楷体,华文行楷,隶书,黑体" color="red" size="4"><strong>哈喽,大家好,我是[有勇气的牛排](全网同名)🐮🐮🐮</strong></font></p>
<p><font face="楷体,华文行楷,隶书,黑体" color="blue" size="4"><strong>有问题的小伙伴欢迎在文末[评论,点赞、收藏]是对我最大的支持!!!。</strong></font></p>
<p>启动命令(重启)</p>
<pre><div class="hljs"><code class="lang-shell">service crond restart
</code></div></pre>
<p>开机自启动</p>
<pre><div class="hljs"><code class="lang-shell">chkconfig crond on
</code></div></pre>
<h2><a id="2_crondtab_21"></a>2 crondtab命令</h2>
<h3><a id="21_crondtab_23"></a>2.1 crondtab选项说明</h3>
<table>
<thead>
<tr>
<th>字段</th>
<th>含义</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>-u user</code></td>
<td>用来设定某个用户的crontab服务,常见用户root</td>
</tr>
<tr>
<td><code>-e</code></td>
<td>编辑某个用户的crontab文件内容,如果不指定用户,则为当前用户的crontab文件内容</td>
</tr>
<tr>
<td><code>-l</code></td>
<td>形式某用户的crontab文件内容,如果不指定用户,则为当前用户的crontab文件内容</td>
</tr>
<tr>
<td><code>-r</code></td>
<td>从 /var/spooll/cron 删除某用户的crontab文件,如果不指定用户,则为当前用户</td>
</tr>
<tr>
<td><code>-i</code></td>
<td>在删除crontab文件是,给出提示</td>
</tr>
</tbody>
</table>
<h3><a id="22__33"></a>2.2 编辑任务文件</h3>
<pre><div class="hljs"><code class="lang-shell">crontab -e
</code></div></pre>
<p><strong>星号含义</strong></p>
<p>文件格式: 分钟 小时 天 月 星期(用*代替每隔位置)</p>
<table>
<thead>
<tr>
<th>字段</th>
<th>含义</th>
<th>范围</th>
</tr>
</thead>
<tbody>
<tr>
<td>第1个 <code>*</code></td>
<td>一小时当中的第几分钟(minute)</td>
<td>0~59</td>
</tr>
<tr>
<td>第2个 <code>*</code></td>
<td>一天当中的第几小时(hour)</td>
<td>0~23</td>
</tr>
<tr>
<td>第3个 <code>*</code></td>
<td>一个月当中的第几天(day)</td>
<td>1~31</td>
</tr>
<tr>
<td>第4个 <code>*</code></td>
<td>一年当中的第几个月(month)</td>
<td>1~12</td>
</tr>
<tr>
<td>第5个 <code>*</code></td>
<td>一周当中的星期几(week)</td>
<td>0~7(0和7均代表周日)</td>
</tr>
</tbody>
</table>
<pre><div class="hljs"><code class="lang-shell">Crontab 表达式规则:
注:Linux中没有second,最小是miniute。
* * * * *
- - - - -
| | | | |
| | | | +----- 星期中星期几 (0 - 6) (星期天 为0)
| | | +---------- 月份 (1 - 12)
| | +--------------- 一个月中的第几天 (1 - 31)
| +-------------------- 小时 (0 - 23)
+------------------------- 分钟 (0 - 59)
</code></div></pre>
<p><strong>特殊符号</strong></p>
<p><code>*</code> 星号:代表任何时间(每分钟/每天/每月…)</p>
<p><code>,</code> 逗号:代表不连续时间</p>
<pre><div class="hljs"><code class="lang-shell"><span class="hljs-meta"># </span><span class="language-bash">每天 8:05、12:05、17:05 执行</span>
5 8,12,17***
</code></div></pre>
<p><code>-</code> 中杠:代表连续时间</p>
<pre><div class="hljs"><code class="lang-shell"><span class="hljs-meta"># </span><span class="language-bash">每 周一到周五,1:00 执行</span>
0 1 ** 1-5
</code></div></pre>
<p><code>/</code> 正斜线:代表每隔多久执行一次</p>
<pre><div class="hljs"><code class="lang-shell"><span class="hljs-meta"># </span><span class="language-bash">每 30分钟 执行</span>
*/30****
</code></div></pre>
<p>当文件编辑完成后,任务就会保存在 <code>/var/spool/cron</code>目录中,每个用户的的定时任务用当前用户名进行区分,保存即生效。</p>
<h3><a id="23_crondtab_93"></a>2.3 crondtab常用案例综合</h3>
<pre><div class="hljs"><code class="lang-shell">crontab -e
</code></div></pre>
<pre><div class="hljs"><code class="lang-shell"><span class="hljs-meta"># </span><span class="language-bash">每天 8:05、12:05、17:05 执行</span>
5 8,12,17 * * *
<span class="hljs-meta">
# </span><span class="language-bash">每 周一到周五, 1:00 执行</span>
0 1 ** 1-5
<span class="hljs-meta">
# </span><span class="language-bash">每 30分钟 执行</span>
*/30 * * * *
<span class="hljs-meta">
# </span><span class="language-bash">每天 6点 每隔10分钟执行一次</span>
*/10 6 * * *
<span class="hljs-meta">
# </span><span class="language-bash">每天 11:55 执行一次</span>
55 11 * * *
</code></div></pre>
<h2><a id="3__116"></a>3 任务编辑</h2>
<p>编辑任务</p>
<pre><div class="hljs"><code class="lang-shell">crontab -e
</code></div></pre>
<p>bash</p>
<pre><div class="hljs"><code class="lang-shell"><span class="hljs-meta"># </span><span class="language-bash">每分钟执行一次,输出写到/tmp/test.txt文件中</span>
*/1 * * * * /bin/echo "666" >> /tmp/test.txt
</code></div></pre>
<p>python</p>
<pre><div class="hljs"><code class="lang-shell"><span class="hljs-meta"># </span><span class="language-bash">每分钟执行一次,输出写到/tmp/pytest.txt文件中</span>
*/1 * * * * python /tmp/my.py >> /tmp/pytest.txt
</code></div></pre>
留言