質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
cron

cronは、Unix系OS上でデーモンプロセスとして動作する、スクリプトの自動実行が可能なジョブスケジューラです。

Q&A

解決済

1回答

2235閲覧

hetemlでlaravelの定期実行をしたい(cron)

tsu2772

総合スコア9

cron

cronは、Unix系OS上でデーモンプロセスとして動作する、スクリプトの自動実行が可能なジョブスケジューラです。

0グッド

0クリップ

投稿2020/06/07 16:47

hetemlではcronの設定で「0 0 * * * *」の部分と「実行ファイル名」の部分しか設定できません

cronの設定
「 0 0 * * */home/users/1/[アカウント名]/実行ファイル名」

Laravelのバッチを実行したいので、実行ファイル名ではなく下記コマンドを実行したいです
php artisan commandName

sshで接続して直接「php artisan 〜」は動くことは確認しています
自動的に実行するにはどうすればよろしいでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

hetemlのcronに関しては知りませんが

Laravel 5.7 タスクスケジュール
が参考になりますが、
cd /path-to-your-project && php artisan commandName >> /dev/null 2>&1を指定してみる

※上のリンクにある通り、タスクスケジュールでArtisanコマンドのスケジュールできるので、そっちに移行して
cd /path-to-your-project && php artisan schedule:run >> /dev/null 2>&1
を実行させるとかでもいい。

※実行ファイル以後の引数指定ができないって言う事ならば
適当なshファイルを作って

sh

1#!/bin/sh 2 3cd /path-to-your-project 4php artisan commandName >> /dev/null 2>&1

っていうのを作ってこれを実行するようにすればいいはず

投稿2020/06/08 04:04

rururu3

総合スコア5545

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tsu2772

2020/06/08 12:09 編集

回答ありがとうございます shを作成して試してみたところ「php: command not found」のエラーがでて実行できなかったようです sshで入って 「php -v」 や 「php artisan commandName」は実行できるので pathは通ってると思いますが パーミッションや実行ユーザーとかですかね… 一旦hetemlに問い合わせてみようと思います
rururu3

2020/06/08 14:39

そういうときは絶対パスで指定してください
tsu2772

2020/06/09 14:12 編集

「less ~/.bash_profile」 で パスが「/usr/local/php7.3/bin/」 なのを確認して 「/usr/local/php7.3/bin/php artisan commandName >> /dev/null 2>&1」 に変更したところ実行できました????
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問