CentOS cronでhello worldを表示するサンプル

CentOSのcronでhello worldを表示するサンプルです。(確認環境:CentOS 8)

目次

サンプル cronを確認する
shファイルを作成しhello worldを表示
cronの設定
cronの実行処理を停止する
cronのログの場所

cronを確認する

systemctl status crond.service
[test@localhost ~]$ systemctl status crond.service
● crond.service - Command Scheduler
   Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor prese>
   Active: active (running) since Tue 2021-10-05 06:16:28 PDT; 2h 24min ago
 Main PID: 1453 (crond)
    Tasks: 1 (limit: 4770)
   Memory: 3.1M
   CGroup: /system.slice/crond.service
           └─1453 /usr/sbin/crond -n

1行目は、cronを確認するコマンドです。
4行目は、activeであることがわかります。

 

shファイルを作成しhello worldを表示

[test@localhost ~]$ pwd
/home/test
[test@localhost ~]$ vi test1.sh 
[test@localhost ~]$ more test1.sh 
echo hello world
[test@localhost ~]$ chmod 775 test1.sh
[test@localhost ~]$ ./test1.sh 
hello world

/home/test配下にtext1.shファイルを作成しています。
7行目は、ファイルを実行し文字列を出力します。

 

cronの設定

[test@localhost ~]$ crontab -e
crontab: installing new crontab
[test@localhost ~]$ crontab -l
* * * * * /home/test/test1.sh >> test1.txt

1行目のcrontab -eでエディタが開くので設定を記述します。
3行目のcrontab -lは1行目で設定した内容を表示しています。
4行目の* * * * *は1分毎にtest1.shを実行します。>>は追記です。test1.txtがない場合は作成されます。

cronの設定値は、以下のとおりです。曜日の0と7は日曜です。

1つめの* 2つめの* 3つめの* 4つめの* 5つめの*
分(0-59) 時(0-23) 日(1-31) 月(1-12) 曜日(0-7)

範囲指定(1-3)、カンマ区切りでの指定(1,2,3)、繰り返しの指定(*/1)(例:1分毎)もできます。

結果

[test@localhost ~]$ more test1.txt 
hello world
hello world
hello world

ファイル内にhello worldが書き込まれます。

 

cronの実行処理を停止する

crontab -eで設定を開き停止する処理の先頭にコメントの#を入力します。

 

cronのログの場所

tail /var/log/cron

/var/log/cronで確認します。参照は権限が必要なのでsudo等を使用します。

関連の記事

CentOS コマンド一覧 (Linux(RHEL))

△上に戻る