魔都拎得清 發表於 2023-12-26 00:00:00

linux中定时任务crond命令使用方法

<p>
        <strong>什么是crond?</strong></p>
<p>
        crond是linux用来定期执行命令或指定程序任务的一种服务。安装完操作系统后,默认会启动crond任务调度服务。crond服务会定期检查系统中是否有要执行的任务。如果有要执行的任务便会自动执行该任务。crond定时任务服务就像我们早上使用的闹钟一样</p>
<p>
        查看crond服务状态:</p>
<p>
        命令:<span>service crond status </span></p>
<p>
        启动crond服务:</p>
<p>
        命令:<span>service crond start</span></p>
<p>
        <strong>什么是crontab? </strong></p>
<p>
        crontab是一个可以在crond服务上添加或编辑定时任务的命令。</p>
<p>
        设置定时任务命令:<br>
        crontab -u 用户名 //设定某个用户的crond服务,一般root用户需要这个参数<br>
        crontab -l //列出某个用户crond服务的详细内容<br>
        crontab -r //删除某个用户的crond服务<br>
        crontab -e //编辑某个用户的crond服务</p>
<p>
        例:root用户要查看自己的详细crond服务内容<br>
        命令:<span>crontab -u root -l</span></p>
<p>
        <strong>crontab file的格式 </strong><br>
        crond服务是运行的程序,crontab是用户用来设置定时任务的命令。<br>
        crontab文件中的行是由6个字段组成,不同的字段间用空格或tab分隔。前5个字段指定命令要运行的时间,第六个字段指定要实行的字符串。</p>
<p>
        <img title="linux中定时任务crond命令使用方法" alt="linux中定时任务crond命令使用方法" src="https://zhuji.jb51.net/uploads/img/202305/71dc5162d19f44f64e71ec3941e9ca8d.jpg"></p>
<p>
        例:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_147635">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">/</code><code class="bash comments">#2月1日星期3早上8点 </code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="bash plain">0 8 1 2 3 </code><code class="bash functions">date</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        <strong>crontab语法格式中的特殊符号含义 </strong></p>
<p>
        <img title="linux中定时任务crond命令使用方法" alt="linux中定时任务crond命令使用方法" src="https://zhuji.jb51.net/uploads/img/202305/393b5ed4ea66d49bba67b395d27865e5.jpg"></p>
<p>
        例:每天早上8点在显示屏上打印”hello …”这句话<br><span>:0 8 * * * echo “hello …”</span></p>
<p>
        <strong>crontab的使用者权限记录在下面两个文件内 </strong></p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_249750">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">/etc/cron</code><code class="bash plain">.deny </code><code class="bash plain">//</code><code class="bash plain">文件内的用户不允许使用 </code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="bash plain">/etc/cron</code><code class="bash plain">.allow </code><code class="bash plain">//</code><code class="bash plain">文件内的用户允许使用 </code>
</div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="bash plain">/var/spool/cron/</code> <code class="bash plain">//</code><code class="bash plain">是所有用户的</code><code class="bash functions">crontab</code><code class="bash plain">文件</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        <strong>总结: </strong></p>
<p>
        1、常见的定时任务分为两类:</p>
<p>
        1.1、linux系统自身定期执行的任务工作<br>
        例:轮询系统日志、备份系统数据、清理系统缓存。<br>
        1.2、用户执行的任务工作<br>
        例、备份数据库数据,更新时间等。</p>
<p>
        2、在编写crontab文件的时候最好做到以下几点:</p>
<p>
        2.1、加注释<br>
        2.2、定时任务命令写到脚本里面<br>
        2.3、定时任务命令或脚本尾加 &gt;/dev/null 2&gt;&amp;1<br>
        2.4、使用绝对路径</p>
<p>
        以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。</p>
頁: [1]
查看完整版本: linux中定时任务crond命令使用方法