- カレントディレクトリで実行される
- crontab -eで編集→この方法では編集しない
- crontabが設定されているか確認
$ crontab -l
crontab: no crontab for
- カレントディレクトリのcrontabファイルの実行
$ crontab cron.txt
/private/var/mail
MAILTO=""
crontabコマンド
PATH=/usr/local/bin:/usr/bin:/bin
分 時 * * * sh フルパス/crontabtest.sh
PATH=/usr/local/bin:/usr/bin:/bin
分 時 * * * python3 フルパス/crontabtest.py
crontab使用時の注意点
- コンピュータスリープ時は実行できない
- ディスプレイスリープ時は実行可能
- PATHの設定が正しくない場合下記のようなエラーが出る
FileNotFoundError: [Errno 2] No such file or directory: 'screen capture'
- pyautoguiのlocateOnScreenを使用する場合は下記のPATHは通しておく
/usr/sbin:
pyautoguiのlocateOnScreenを使用していた時に、使用するキャプチャのフォルダがうまく参照できなかった。PATHもそのフォルダに通していた。
- 対策
- cronで直接*.pyを実行するのではなく、*.pyファイルを実行するシェルスクリプトをcronから実行させるとエラーなく動作させる事ができた。
- cronファイル中のPATHがなんで通らなかったのか不明
- シェルスクリプトファイルのコード
cd ワークディレクトリ
Python3 *.py