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は指定された日付間のカウントダウンを実装します

推薦する

Ubuntu 20.04 に cuda10.1 をインストールする手順 (グラフィック チュートリアル)

インストール前の準備CUDA の主な目的はディープラーニングであり、現在主流のディープラーニングフレ...

フロントエンドのパフォーマンス最適化 - フロントエンドエンジニアが話し合うべき問題点

はじめに<br />前回の記事「私の CSS アーキテクチャ コンセプト」では、公園で友...

CSSセレクターでの正規表現の使用

はい、CSS にも正規表現があります (アーメン) CSS で目立つための 2 つの強力なツール: ...

Vue で 3D タグ クラウドを実装するための詳細なコード

プレビュー: コード:ページセクション: <テンプレート> <div class=...

Zabbix は DingTalk のアラーム機能を画像付きで設定します

実装のアイデア:まず、アラーム情報にはitemidが必要です。これは前提条件です。情報に渡されるパラ...

VirtualBox に CentOS、JDK、Hadoop をインストールする詳細なチュートリアル

目次1. 前提条件1.1 サポートされているプラ​​ットフォーム1.2 jdk および hadoop...

Linux パーティションまたは論理ボリュームにファイルシステムを作成する方法

序文システムにファイル システムを作成し、それを永続的または非永続的にマウントする方法を学習します。...

Nginx ストリーム構成プロキシ (Nginx TCP/UDP ロード バランシング)

序章nginx が優れたリバース プロキシ サービスであることは誰もが知っています。nginx を使...

HTML に CSS を導入するいくつかの方法の紹介

目次1. HTMLタグ要素にCSSスタイルを直接埋め込む2. HTMLのheadセクションにおけるス...

CocosCreator でレイヤー管理に常駐ノードを使用する方法

CocosCreator バージョン: 2.3.4ほとんどのゲームにはレイヤー管理機能があり、例えば...

Linux で txt を mysql にインポートする方法

序文昨日、小さなプロジェクトを書いていたときに、txt ドキュメントのデータを mysql データベ...

React 星評価コンポーネントの実装

要件は、製品の評価データを渡すことであり、ページには対応する星の数が表示されます。 1. 異なる評価...

コーディングスキルを向上させるためのJavaScriptのヒント

目次1. 一意の値をフィルタリングする2. 短絡評価2.1 シナリオ例3. ブール変換4. 文字列を...

CSS 前景と背景の自動カラーマッチング技術の紹介 (デモ)

1. カラーマッチング効果のプレビュー下の GIF に示すように、ボタンの背景色が徐々に薄くなると...