スクリプトを定期的に自動的実行する

Linuxには、1時間毎や、1日毎など一定の周期にアプリケーションを実行するシステム、cronがあります。cronを設定すれば、定期的に、自動でファイルのバックアップをとったり、ウィルススキャンスソフトを自動で起動させることも可能です。

ただし、cronの設定方法はあまり直感的とは言い難く、ある程度慣れるまでなかなか気軽に使えません。せっかくGUIインターフェイスが優れたUbuntuを使っているので、GUIで定期的に自動実行するようにさせましょう。

GUIでcronの設定を行うソフトウェアの中で最もおすすめなのが、Gnome Scheduleです。Ubuntuソフトウェアセンターでcronと入力すれば、Scheduled tasksという名前で候補としてあがってくるはずです。端末でインストールしたい方は次のコマンドを実行してください。

sudo apt-get install gnome-schedule

インストールが完了すると、パネルメニューの[アプリケーション][システムツール]に「Scheduled tasks」というアプリケーションが追加されているはずなので、クリックして起動してください。

使い方は簡単です。新しくタスクを追加するには、新規をクリックして、一番上の「A task launches recurrently」を選択します。ちなみに、定期的ではなく、指定時間に一度だけ実行させたい場合は、その下の「A task that launches one time」を選択します。

一番上の項目を選択したら、あとは必要な項目を埋めていきます。Description:には適当なタイトルを、Command:には実行したいコマンドを入力します。ruby /home/user/sample.rbというように、予めスクリプトファイルにしておけば修正が楽です。

時間の設定を行うには、BasicからAdvancedにチェックを切り替えます。*は毎〜という意味で、Month:に*が入れば、毎月Minute:なら毎分です。

具体的にこの時間、この日に指定したいという場合は、直接数値を入力してください。分なら0から59、時間なら0から23です。また、3時間毎に実行したい場合は、Hour:に*/3と入力することができます。

最後に、作成したシェル(スクリプト)にはしっかり実行権限を与えておくことをお忘れ無く。パーミションの変更にはchmodコマンドを使用します。