Linux と Windows でスケジュールされたタスクを設定する方法

Linux と Windows でスケジュールされたタスクを設定する方法

リナックス

Linux では、crontab を使用してスケジュールされたタスクを作成できます。システムにはデフォルトで crontab が付属しています。このデモは Ubuntu 16.04 で行われます。

1. crontabの基本的な使い方

#/etc/init.d/cron status # ステータスを確認します#/etc/init.d/cron start # crontab サービスを開始します#/etc/init.d/cron stop # crontab サービスを停止します#/etc/init.d/cron reload # スケジュールされたタスクを再読み込みします#crontab -l # スケジュールされたタスクのリストを表示します

2. ログを有効にする

設定ファイルを変更する必要があります。

#sudo vim /etc/rsyslog.d/50-default.conf
...
cron.* /var/log/cron.log #cron の前のコメント文字を削除します...

rsyslogを再起動します。

#sudo service rsyslog restart

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

このデモでは、私が書いた Python スクリプトを定期的に実行します。Bash スクリプトなども同様になるはずです。スクリプトの絶対パスを指定するのが最善であることに注意してください。それでも問題が解決しない場合は、最初にスクリプト パスに切り替えて実行することができます。でも大丈夫なはずです。

 ... 0 0 * * * python /home/kdv/Desktop/sync-opensource/sync.py # 毎日または毎週のスクリプトのスケジュール実行
 @daily cd /home/kdv/Desktop/sync-opensource;python /home/kdv/Desktop/sync-opensource/sync.py

 0 0 1 * mon python /home/kdv/Desktop/sync-opensource/sync.py # 毎週または毎週のスクリプトの実行スケジュール
 @weekly cd /home/kdv/Desktop/sync-opensource;python /home/kdv/Desktop/sync-opensource/sync.py

必要に応じて毎日または毎週実行を設定します。詳細についてはリンクを参照してください。

タスクを設定したら、タスク リストを確認し、必要に応じてタスクをリロードできます。

#crontab -l # 追加したタスクを表示できます #/etc/init.d/cron reload # スケジュールされたタスクをリロードします #vim /var/log/cron.log # スケジュールされたタスクによって生成されたログを表示します

4. テスト

図はテストのために5分ごとにスクリプトを実行する例を示しています。

左: スクリプトの実行中、実行中のスクリプトの出力結果を記録するために、現在の時刻にちなんで名付けられたログ ファイルが生成されます。

右: crontab ログ ファイル。スクリプトが 5 分ごとに実行されていることがわかります。

ウィンドウズ

Windows システムには crontab コマンドはありませんが、Windows システムには crontab コマンドに似たコマンドである schtasks コマンドがあります。 Win10で動作します。

1. ヘルプドキュメント

schtasks のヘルプ ドキュメントを表示して、コマンドの詳細を確認するには、次のコマンドを使用します。

C:\Users\Administrator>schtasks /?
SCHTASKS /パラメータ [引数]
説明する:
 管理者は、ローカルまたはリモート システム上でスケジュールされたタスクを作成、削除、照会、変更、実行、中止できます。
パラメータリスト:
 /Create 新しいスケジュールされたタスクを作成します。
 /Delete スケジュールされたタスクを削除します。
 /Query スケジュールされたすべてのタスクを表示します。
 /Change スケジュールされたタスクのプロパティを変更します。
 /Run スケジュールされたタスクをオンデマンドで実行します。
 /End 現在実行中のスケジュールされたタスクを中止します。
 /ShowSid スケジュールされたタスク名に対応するセキュリティ識別子を表示します。
 /? このヘルプ メッセージを表示します。
例:
 タスク
 タスク /?
 SCHTASKS /実行/?
 SCHTASKS /終了/?
 SCHTASKS /作成/?
 SCHTASKS /削除/?
 SCHTASKS /クエリ/?
 SCHTASKS /変更/?
 SCHTASKS /ShowSid /?

タスクの作成、照会、変更、削除などを行うことができます。create コマンドなどの対応するサブコマンドに慣れていない場合は、SCHTASKS /Create /? を使用して詳細な手順をさらに表示できます。

2. システムのデフォルトタスクを表示する

schtasks コマンドを使用するか、クエリ パラメータを使用して schtasks /query を実行し、システムで現在実行中のタスクを照会します。

C:\Users\Administrator>schtasks

フォルダ: \
タスク名次回実行時モード============================================= ========================= =====================
Adobe Acrobat Update Task 2019/9/2 11:00:00 準備完了 SogouImeMgr N/A 準備完了 sync-opensource 2019/9/2 11:30:00 準備完了 WpsUpdateTask_Administrator 2019/9/2 9:23:46 準備完了...

3. スケジュール実行タスクを作成する

より詳細なパラメータの説明を表示するには、コマンド ラインに schtasks /create /? と入力します。最も重要となるパラメータのみがリストされています。

/TN タスク名 このスケジュールされたタスクを一意に識別するパス\名前の形式で文字列を指定します。
/TR taskrun このスケジュールされた時間に実行されるプログラムのパスとファイル名を指定します。
 例: C:\windows\system32\calc.exe
/SC スケジュール スケジュールの頻度を指定します。
 ==> wevtvwr.msc の実行を開始するためのスケジュールされたタスク「EventLog」を作成します
 SCHTASKS /Create /TN イベントログ /TR wevtvwr.msc /SC ONEVENT
 毎分、毎時間、毎日、毎週など、分: 1 ~ 1439 分。
 時間単位: 1 - 23 時間;
 毎日: 1 ~ 365 日;
 週次: 1 ~ 52 週間。
/ST 開始時刻 タスクを実行する開始時刻を指定します。
 時刻の形式は HH:mm (24 時間制) です。たとえば、14:30 は午後 2:30 を意味します。 /ST が指定されていない場合、デフォルトは現在の時刻になります。 /SC ONCE このオプションは必須です。

3.1 タスクを作成する

毎日11:30に定期的にbatスクリプトを実行するために、 "sync-opensource 」というファイルを作成します。タスクを作成するコマンドは次のとおりです。

schtasks /create /tn "sync-opensource" /tr "E:\PycharmProjects\opensource\sync.bat" /sc 毎日 /st 11:30

4 その他

4.1 指定されたタスクを見つける

たとえば、上記で作成した sync-opensource タスクを見つけます。

C:\Users\Administrator>schtasks -query | 「sync-opensource」を検索
sync-opensource 2019/9/2 11:30:00 準備完了

4.2 タスクの削除

指定したタスクを削除するには、次のコマンドを使用できます。

schtasks /delete /tr taskname

要約する

上記は、編集者が紹介した Linux および Windows でのスケジュールされたタスクの設定方法です。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • Linux 環境で crontab コマンドを使用して、スケジュールされた定期的な実行タスクを設定します (PHP 実行コードを含む)
  • Linux での crontab スケジュール実行コマンドの詳細な説明
  • Linux でタスクをスケジュール実行するための at コマンドと crontab コマンドの詳細な説明
  • Linux でタスクを定期的に実行する方法と crontab の使用方法の説明 (収集およびソート済み)
  • Linuxでcronを使用して定期的にタスクを実行する方法

<<:  CentOS で MySQL を完全にアンインストールする方法

>>:  Vueは指定された日付間のカウントダウンを実装します

推薦する

Vue で Excel ストリーム ファイルをダウンロードし、ダウンロード ファイル名を設定する方法

目次概要1. URL経由でダウンロード2. aタグのダウンロード属性とblobコンストラクタを組み合...

iframe を使用して Web ページに天気の影響を表示します

CS: ...コードをコピーコードは次のとおりです。 *{マージン:0;パディング:0;リストスタイ...

CSS のフィルター属性とバックドロップフィルターの適用と違いの詳細な説明

フィルターとバックドロップフィルターにはいくつかの違いがあります。フィルターは現在の要素だけでなく、...

ショッピングカートの計算を実現する js メソッド

この記事の例では、ショッピングカートの計算を実装するためのjsの具体的なコードを参考までに共有してい...

JavaScript のスプレッド演算子とレスト演算子の違いの詳細な説明

目次レスト演算子とは何ですか? JavaScript 関数では REST 演算子はどのように機能しま...

HTML 固定タイトル列、タイトル ヘッダー テーブル固有の実装コード

コードをコピーコードは次のとおりです。 <!DOCTYPE html PUBLIC "...

MySQL に外部キー制約を追加する具体的な方法

このチュートリアルの動作環境: Windows 7 システム、MySQL 8 バージョン、Dell ...

MySQL データベースで UTF-8 エンコードを設定する方法

/etc/my.cnf または /etc/mysql/my.cnf ファイルを変更する [クライアン...

Python ベースの Linux システムにおける特定のプロセスのパフォーマンス監視の考え方の詳細な説明

インターネット上には Linux サーバーを監視するためのツール、コンポーネント、プログラムが多数あ...

CSS ですべての子要素を選択し、スタイルを追加する方法

方法:実際のプロジェクトを例に挙げてみましょう。 .lk-ツールバー{ .el-入力{ 幅: 169...

Vueは携帯電話のカメラとアルバムを呼び出す機能を実装します

この記事では、携帯電話のカメラとアルバムにアクセスするためのVueの具体的なコードを参考までに共有し...

CSS3 で半透明の背景画像と不透明なコンテンツを実現する方法の例

以前のブログのログインページを作成していたときに、この問題に遭遇しました。突然、透明な背景画像と不透...

既存のDockerコンテナの内容を変更する方法

1. Docker psはコンテナをリストします 2. Docker cpはコンテナにファイルをコピ...

CSS3 で高さと幅を不定にして垂直と水平に中央揃えするいくつかの方法

1. フレックスレイアウト 。父親 { ディスプレイ: フレックス; コンテンツの中央揃え: 中央;...

Nginx レイヤー 4 負荷分散構成ガイド

1. レイヤー4負荷分散の概要レイヤー 4 ロード バランシングとは何ですか?いわゆる 4 層負荷分...