web-dev-qa-db-ja.com

cronはスクリプトを実行していません

私はLinuxを初めて使っているので、ばかげた質問をおdoびします。問題は、1時間ごとに20分でジョブの実行を自動的に実行しようとしていることです。

  1. スクリプトフォルダーにshファイルを作成します。

。#!/ bin/sh cd/home/ubuntu/scripts/dm-customer &&
python3 ./md_executor.py

1.1 shファイルを実行可能ファイルとして変換します。

  • chmod 755 etl-execution.sh
  • chmod + x etl-execution.sh

    1. ここでcrontab -eと入力して、次の行を追加します。

      • 55 * * * * ubuntu /home/ubuntu/scripts/dm-customer/etl-execution.sh

その後、cronが自動的にトリガーされますが、何も起きていません。私がしようとしました:

  • ubuntuではなくrootを使用してcrontab -eを編集しますが、何も起こりません
  • 私のubuntuセッションでshを手動で実行すると、本当に理解できません。

これが私を夢中にさせているフィードバックに感謝します。ありがとう

1
Andres Angel
55 * * * * ubuntu /home/ubuntu/scripts/dm-customer/etl-execution.sh

なぜそこにUbuntuがあるのですか?

形式は、man 5 crontabからです。

   The format of a cron command is similar to the V7 standard, with a num-
   ber  of upward-compatible extensions.  Each line has five time-and-date
   fields followed by a username (if this is the system crontab file), and
   followed  by  a  command.   Commands  are  executed by cron(8) when the
   'minute', 'hour', and 'month of the  year'  fields  match  the  current
   time, and at least one of the two 'day' fields ('day of month', or 'day
   of week') match the current time (see "Note" below).

ユーザー名は、システムcrontabの場合にのみ含まれます。 crontab -eを自分のユーザーとして実行している場合は、notを含める必要があります。

試して

55 * * * * /home/ubuntu/scripts/dm-customer/etl-execution.sh

それが機能するかどうかを確認します。

2
vidarlo