LinuxでCrontabを使用してJavaファイルを処理する方法

LinuxでCrontabを使用してJavaファイルを処理する方法

Javaプログラム用にLinuxでCrontabを使用する方法は? MISスクリプトを実行したいです。どのようにcrontabを行うことができ、パスはどうすればよいですか?

答え1

このJavaアプリケーションがコンソールベースのアプリケーションであると仮定するとJavaアプリケーションであるため、本質的に特別な作業を行う必要はありません。

Javaファイルがある場合は、.class次のようにアプリケーションを実行します。

$ java HelloWorld

ファイルがある場合は、.jar次のようにアプリケーションを実行します。

$ java -jar myapp.jar

予約されたこと

上記のいずれかの方法をcronジョブにするには、その方法をBashスクリプトに追加し、指定されたcrontabディレクトリの1つにスクリプトを配置するか、上記のコマンドをcrontabエントリに追加します。

はい

  1. スクリプトの作成

    これはスクリプトですmyjavawrapper.bash

    #!/bin/bash
    
    # Do any CLASSPATH stuff here
    $ java -jar myapp.jar
    

    myjavawrapper.bash次に、cron作業ディレクトリまたはシステムcrontabのいずれかを入力します。

    $ ls -d1l /etc/cron*
    drwxr-xr-x. 2 root root 4096 Nov  1 23:58 /etc/cron.d
    drwxr-xr-x. 2 root root 4096 Nov  3 23:46 /etc/cron.daily
    -rw-r--r--  1 root root    0 Jun 29  2011 /etc/cron.deny
    drwxr-xr-x. 2 root root 4096 Oct  8  2011 /etc/cron.hourly
    drwxr-xr-x. 2 root root 4096 Dec 18  2010 /etc/cron.monthly
    

    -rw-r--r-- 1 root root 451 6月2日12:10 /etc/crontab drwxr-xr-x.2 root root 4096 2011年8月12日/etc/cron.weekly

  2. アイテムを追加する/etc/crontab

    crontab ファイルに次の行を追加します。

    */30  *  *  *  * root  (cd /path/to/class/file; java HellowWorld)
    

    上記はjava HelloWorld30分ごとに実行されます。

上記の方法は2つの方法に過ぎず、唯一の方法ではありません。これは、タスクを完了する方法についていくつかのアイデアと方法を提供するためのものです。他にもいくつかの方法があります。

関連情報