Linux スケジュールタスクの関連操作の概要

Linux スケジュールタスクの関連操作の概要

皆様の参考と操作を容易にするために、様々な主要ウェブサイトを検索し、関連するスケジュールされたタスクの動作をテストしました。

1. cronの紹介

よく使われる crontab コマンドは、cron table の略です。これは cron の設定ファイルであり、ジョブ リストとも呼ばれます。関連する設定ファイルは、次のフォルダーにあります。

1.1. Cron関連ディレクトリ

  • /var/spool/cron/ ディレクトリには、root を含む各ユーザーの crontab タスクが保存されます。各タスクには作成者の名前が付けられます。
  • /etc/crontab このファイルは、さまざまな管理および保守タスクのスケジュールを担当します。
  • /etc/cron.d/ このディレクトリは、実行される crontab ファイルまたはスクリプトを保存するために使用されます。
  • また、スクリプトを /etc/cron.hourly、/etc/cron.daily、/etc/cron.weekly、/etc/cron.monthly ディレクトリに配置して、1 時間ごと、1 日ごと、1 週間ごと、または 1 か月ごとに実行することもできます。

1.2. crontabの共通コマンド

  • crontab [-u username] //ユーザーテーブルを省略すると、現在のユーザーのcrontabを操作することになります
  • crontab [-u ユーザー名] -e //ワークシートを編集)
  • crontab [-u ユーザー名] -l //ワークシート内のコマンドを一覧表示します)
  • crontab [-u ユーザー名] -r //ジョブを削除)

1.3. 仕様書の作成

1. 各ポジションのパラメータは以下の通りで、詳細には注意事項もあります。

述べる:

1) *は任意の時間(分、時間、日、月、週)に実行されることを意味します

2) - 5時~7時などの時間範囲を示します

3) は時間間隔を表します。たとえば、6,0,4 は土曜日、日曜日、木曜日を表します。

4) /1はn時間単位ごとを意味します。例:*/10は10分ごと

2. スケジュールされたタスクを設定する

2.1. crontab でスケジュールされたタスクをグローバルに設定する --- タスクがリンク、curl、またはファイルへの書き込みである場合

(1)crontab -eコマンドを実行する

(2)スケジュールされたタスクを書く

スケジュールされたタスクがリンクの場合

*/1 * * * * /usr/local/curl (独自のcurlパス) www.baidu.com >/dev/null 2>$1

ファイルに内容を書き込む必要がある場合

*/1 * * * * エコー "hello" >> abc.log

いくつかのポイントを共有したいと思います

  • 標準入力0はキーボードからの入力を取得します /proc/self/fd/0
  • 標準出力1は画面(コンソール)に出力されます /proc/self/fd/1
  • エラー出力2は画面(コンソール)に出力されます。/proc/self/fd/2
  • /dev/null は Linux の空のデバイス ファイルを表します。このファイルに書き込まれたすべての内容は失われ、一般に「ブラック ホール」として知られています。
  • >/dev/nullは「ブラックホール」にエラーを出力することを意味します
  • >/dev/null 2>&1 デフォルトは 1 で、1>/dev/null 2>&1 と同じです。これは、標準出力を「ブラックホール」にリダイレクトし、エラー出力 2 を標準出力 1 にリダイレクトすることを意味します。つまり、標準出力とエラー出力の両方が「ブラックホール」に入ります。
  • 2>&1 >/dev/null は、エラー出力 2 を標準出力 1、つまり画面にリダイレクトし、標準出力が「ブラックホール」に入り、エラー出力が画面に表示されることを意味します。
  • ここでの「&」の役割については、次のように理解できます。2>/dev/null はファイルにリダイレクトし、次に 2>&1 です。ここで & が削除されると、エラー出力はファイル 1 に送信され、& を使用すると 1 が標準出力であることを示します。

(3)スケジュールされたタスクを保存する

  1. iを押してタスクを挿入し、スケジュールされたタスクを書き込む
  2. Esc キーを押して終了し、 :wq と入力してから、 Ctrl + C キーを押して正常に保存します。

2.2. .shメソッドの実装

(1)シェルスクリプトを作成する

  • プロジェクト内に.shという拡張子のファイルを作成します。
  • このディレクトリのこのシェルファイルに十分な権限を追加します
chmod -R 777 ファイル名を作成します

(2)スケジュールされたタスクにシェルスクリプトを書き込む

対応するシェルファイルをスケジュールされたタスクに書き込む

*/1 * * * * .shファイルの絶対パス>/dev/null 2>$1

スケジュールされたタスクを実行するときに、対応するシェルファイルをログに書き込みます。

*/1 * * * * .shファイルの絶対パス >> a.log >/dev/null 2>$1

(3)crondを再起動する

サービスcrondの再起動

(4)プロジェクトに書かれているか確認する

crontab -l

ご視聴ありがとうございました。ご質問がありましたら、コメント欄にメッセージを残してください。

要約する

Linux のスケジュールされたタスクの関連操作に関するこの記事はこれで終わりです。Linux のスケジュールされたタスクの関連操作の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Linuxでcronを使用して定期的にタスクを実行する方法
  • Linux crontab スケジュールタスクの設定方法(詳細説明)
  • Linuxはcrontabを使用してPHP実行計画のタイミングタスクを実装します
  • Linux で crontab を使用してスケジュールされたタスクを 1 秒に 1 回実行する方法
  • サーバーは定期的にスケジュールされたタスクを実行し、定期的にページにアクセスします (Windows/Linux)
  • Linuxでスケジュールされたタスクを設定する方法
  • Linux での Python スクリプトの自動起動とスケジュールされたタスクの詳細な説明
  • Linux でタスクを定期的に実行する方法と crontab の使用方法の説明 (収集およびソート済み)
  • Linuxは毎週45日前のログをクリーンアップするためにスケジュールされたタスクを使用します
  • Linux で PHP を使用して cron タスクをスケジュールする方法の詳細な説明

<<:  MySQL 8.0.18 圧縮パッケージのインストールと忘れたパスワードのリセット時に遭遇する落とし穴

>>:  mysql bin-log ログファイルを sql ファイルに変換する方法

推薦する

MySQLの日付と時刻の間隔計算の分析例

この記事では、例を使用して、MySQL の日付と時刻の間隔計算について説明します。ご参考までに、詳細...

Linux での wget コマンドの基本的な使い方

目次序文1. wgetを使用して単一のファイルをダウンロードする2. wget -Oを使用してダウン...

MySQL マスタースレーブレプリケーション切断の一般的な修復方法

目次01 問題の説明02 ソリューション1. 他のスレーブライブラリを見つけてすぐに置き換える2. ...

MYSQL row_number() および over() 関数の詳細な使用方法

構文フォーマット: row_number() over(partition by grouping ...

Iframe の内外のページで JS がどのように動作するかの概要

目次iframeの外側のiframeのコンテンツを取得する方法1方法2 iframe 内の ifra...

JS ループで async と await を正しく使用する方法

目次概要(ループモード - 共通)配列と非同期メソッドを宣言して反復するforループで使用するマップ...

MySQL Binlog ログの読み取り時によくある 3 つのエラー

1. mysqlbinlog: [エラー] 不明な変数 'default-character...

jQueryで劇場の座席選択と予約の効果を実現

jQueryは劇場の座席選択と予約の効果を実現します。参考までに、具体的な内容は次のとおりです。効果...

Vite2.x に基づく Vue 3.x プロジェクトの実装

Vue 3.x プロジェクトの作成 npm init @vitejs/app my-vue-app ...

CentOS7 (YUM) での MySQL 5.7 のインストールと設定のチュートリアル

インストール環境: CentOS7 64ビット、MySQL5.7 1. YUMソースを設定するMyS...

Dell R720 サーバーに Windows Server 2008 R2 をインストールする方法

注: この記事のすべての写真はインターネットから収集されたものであるため、DELL R720 サーバ...

Dockerのデフォルトネットワークセグメントの正しい変更手順

背景同僚がセキュリティ プロジェクトに取り組んでおり、AWS サーバーに秘密兵器を展開する必要があり...

MySQL の完全バックアップ中に特定のライブラリを除外する方法

MySQLの完全バックアップを実行するときは、--all-databaseパラメータを使用します。例...

CSS3 はクールな 3D 回転遠近法効果を実現します

CSS3はクールな3D回転パースペクティブを実現します3D アニメーション効果はますます人気が高まっ...

Electronで不規則な形状の透明部分をクリックする実装

目次不規則なフォームの実装透明な部分をクリックする不規則なフォームの実装ここでは円形フォームを実装し...