はい、crontab は Linux システムに付属のスケジュールされたタスク ツールです。ユーザーは crontab ツールを使用して、独自のスケジュールされたタスクをカスタマイズできます。 crontab コマンドを使用すると、ユーザーは、「crontab [-u user] file」または「crontab [-u user] [-e|-l|-r]」という構文を使用して、指定されたシステム コマンドまたはシェル スクリプトを一定の間隔で実行できます。時間間隔の単位は、分、時間、日、月、週、または上記の任意の組み合わせにすることができます。
#このチュートリアルの動作環境: linux7.3 システム、Dell G3 コンピューター。
Linux システムは cron (crond) システム サービスによって制御されます。 Linux システムには計画されたタスクが多数あるため、このシステム サービスはデフォルトで開始されます。さらに、ユーザーがスケジュールされたタスクを自分で設定することもできるため、Linux システムには、ユーザーがスケジュールされたタスクを制御するためのコマンド (crontab
コマンド) も用意されています。 )
Linux でのタスク スケジューリングは、システム タスク スケジューリングとユーザー タスク スケジューリングの 2 つのカテゴリに分類されます。
システム タスク スケジューリング:
システムが定期的に実行する作業 (キャッシュされたデータのハードディスクへの書き込み、ログのクリーニングなど)。 /etc ディレクトリには、システム タスク スケジューリングの構成ファイルである crontab ファイルがあります。
ユーザー タスクのスケジュール:
ユーザー データのバックアップ、定期的な電子メール リマインダーなど、ユーザーが定期的に実行する必要があるタスク。 ユーザーは crontab ツールを使用して、スケジュールされたタスクを独自にカスタマイズできます。
すべてのユーザー定義の crontab ファイルは、/var/spool/cron ディレクトリに保存されます。ファイル名はユーザー名と一致します。
#crontab は、Linux システムに付属するスケジュールされたタスク ツールです。
###1。コマンド形式:
crontab [-u user] file crontab [-u user] [ -e | -l | -r ]
2。コマンド機能:
crontab コマンドを使用すると、指定したシステム コマンドまたはシェル スクリプトを一定の間隔で実行できます。時間間隔の単位は、分、時間、日、月、週、または上記の任意の組み合わせにすることができます。このコマンドは、定期的なログ分析やデータのバックアップなどのタスクに非常に適しています。
3.コマンドパラメータ:
-u user:用来设定某个用户的crontab服务,例如,“-u ixdba”表示设定ixdba用户的crontab服务,此参数一般有root用户来运行。 file:file是命令文件的名字,表示将file做为crontab的任务列表文件并载入crontab。如果在命令行中没有指定这个文件,crontab命令将接受标准输入(键盘)上键入的命令,并将它们载入crontab。 -e:编辑某个用户的crontab文件内容。如果不指定用户,则表示编辑当前用户的crontab文件。 -l:显示某个用户的crontab文件内容,如果不指定用户,则表示显示当前用户的crontab文件内容。 -r:从/var/spool/cron目录中删除某个用户的crontab文件,如果不指定用户,则默认删除当前用户的crontab文件。 -i:在删除用户的crontab文件时给确认提示。
4. Crontab ファイル形式
上の図は crontab のファイル形式の説明です
crontab -l #查看任务 crontab -e #编辑任务 键入 a 进入编辑模式,进行编辑后 Ctrl+c #退出编辑模式 Shift + w + q #退出编辑 wq 保存并退出
各ユーザーは自分のタスクをスケジュールし、jingkong ユーザーの下でスケジュールされたタスクを作成できます。
関数: 1 分ごとに実行し、時間を指定したファイルに書き込みます<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">[jingkong@muguangjingkong ~]$ crontab -e
### first crontab
*/1 * * * * /bin/date >> /home/jingkong/jk-log.txt</pre><div class="contentsignin">ログイン後にコピー</div></div>
[jingkong@muguangjingkong ~]$ crontab -l ### first crontab */1 * * * * /bin/date >> /home/jingkong/jk-log.txt
[jingkong@muguangjingkong ~]$ crontab -r
vi 編集インターフェイスに入り、スケジュールしたいタスクを書き込みます。 crontab スケジューリング コマンドの形式は次のとおりです。
* * * * * command path //
最初の 5 つのフィールドには、いつ作業を開始するかを指定する整数値を指定できます。
6 番目のフィールドは文字列、つまりコマンド フィールドです。これには、実行された crontab スケジューリング コマンド が含まれます。各フィールドはスペースとタブで区切られます。 <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">* * * * *
分:1-59,每十分钟*/10
时: 0-23, */2
日: 1 -31
月: 1-12
星期: (0-6)</pre><div class="contentsignin">ログイン後にコピー</div></div>
例:
##每天21:30 执行 30 21 * * * cmd01 ###每个月1,11,21的2:30执行 30 2 1,11,21 * * cmd02 ##每周六或者每周日,1:45执行 45 1 * * 6,0 cmd03 #每天20:00至23:00日 ,每半个小时执行一次 0,30 20-23 * * * cmd04 ##每一小时执行一次 * */1 * * * cmd05
以上がcrontab は Linux に組み込まれていますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。