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

推薦する

SpringBoot + Vue プロジェクトを Linux サーバーにデプロイするための詳細なチュートリアル

序文SpringBoot + Vueのフロントエンドとバックエンドを分離したプロジェクトをどのように...

Windows 環境での MySQL の解凍、インストール、バックアップ、復元

システム環境はserver2012です1. MySQLの解凍バージョンをダウンロードし、インストール...

HTML メタビューポート属性の説明

ビューポートとはモバイル ブラウザは、Web ページを仮想の「ウィンドウ」(ビューポート) に配置し...

CSS3を使用してプログレスバー効果を実現し、動的にパーセンテージを追加する

プロジェクト中、プログレスバーを実装するために js の requestAnimationFrame...

Linux での vi (vim) の新しい使い方のまとめ

私は数年間 vi エディタを使ってきましたが、実用的な用途で使ったことはありませんでした。今日 Py...

CSS 複数 3 列適応レイアウト実装の詳細な説明

序文従来のWEBレイアウトに沿うため、すべてヘッダーとフッターモードの左・中央・右レイアウトで書かれ...

スクロールバーを非表示にしながらもスクロール効果を維持する純粋な CSS (モバイルと PC)

携帯モバイル ページは Chrome および Safari とのみ互換性があればよいため、カスタム ...

CSS3のfocus-withinセレクタの使用

擬似要素と擬似クラスところで、まずは疑似クラスセレクターと疑似要素セレクターについておさらいしておき...

MySQL の無効な左結合の問題を解決する方法とその使用上の注意

MySQLの左結合が無効であり、その使用方法今日SQLを書いていたとき、左結合を使用すると左のテーブ...

MySQLクエリ文の実行プロセスの詳細な説明

目次1. クライアントとサーバー間の通信方法2. クエリキャッシュ3. クエリ最適化処理4. クエリ...

写真とテキストによる MySQL と sqlyog のインストール チュートリアル

1. MySQL 1.1 MySQLのインストールmysql-5.5.27-winx64 ダウンロー...

VUE を使用して Ali Iconfont ライブラリをオンラインで呼び出す方法

序文何年も前、私はサーバー側の初心者でしたが、業界の競争が激しくなるにつれて、フロントエンドの初心者...

Docker チュートリアル: コンテナの使用 (簡単な例)

Docker を初めて使用する場合は、コンテナの管理を始めるために習得する必要がある基本的なコマン...

MySQL ビューの原理と基本操作例

この記事では、例を使用して、MySQL ビューの原理と基本操作を説明します。ご参考までに、詳細は以下...

Dockerのオンラインおよびオフラインインストールと一般的なコマンド操作

1. テスト環境名前バージョンセント7.6ドッカー18.09.06 2. オンラインインストールここ...