crontabのようこそ画面の使い方

crontabのようこそ画面の使い方

sudo crontab -e

15 0 * * 1-5 /usr/bin/screen -S wake_up -d -m /home/pi/auto/wake_up.py

しかし、00:15に画面が起動しません...

このコマンドは:(ターミナルで動作)

画面-Swake_up-dm/home/pi/auto/wake_up.py

Pythonファイル:

#!/usr/bin/env python3
import time
x = 1
while x<10:
  print (x)
  x += 1
  time.sleep(1)

/var/log/システムログ

Nov 17 00:15:01 pi cron[352]: (root) RELOAD (crontabs/root)
Nov 17 00:15:01 pi CRON[32392]: (root) CMD (/usr/bin/screen -S wake_up -d -m /home/pi/auto/wake_up.py)

正しくロギングを開始するようになりました。

答え1

screen -S wake_up -d -m  /home/pi/auto/wake_up.py

これにより、コマンド画面は開いたままになりません。代わりに、次のファイルを生成してください。

% cat /home/pi/auto/.boot-screenrc
screen -t cpu 1
stuff /home/pi/auto/wake_up.py\015

これにより、Pythonコマンドを標準入力に挿入(塗りつぶし)して戻り値を追加する画面が表示されます。

次に、次を追加します。

screen -d -m -S wake_up -c /home/pi/auto/.boot-screenrc

また、cronのデフォルトパスは非常に短縮されています。サードパーティ製ソフトウェアをロードした場合は、パスにない可能性があります。 env コマンドの代わりに絶対パスを使用します。または、crontabファイルの上部に次の行を追加することもできます。

PATH=/bin:/usr/bin:/some/other/path

答え2

あなたは近いです。ルートの代わりにsudo自分のコンテンツを編集できるように削除します。crontabそして指定する必要は/usr/bin/screenありませんscreen

このscreenセッションはコース期間中続きますpython。プログラムが終了したときも同様ですscreen

関連情報