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
。