[英]Execute symfony command in bash script
在cron
運行時,我無法在bash腳本中執行symfony命令。 當我手動執行.sh腳本時,一切工作正常。
在我的bash文件中,命令是這樣執行的:
/usr/bin/php -q /var/www/pww24/bin/console pww24:import asari $office > /dev/null
我從root運行腳本,將cron
也設置為root。 對於測試,我將文件權限設置為777並添加了+x
來執行。
bash腳本執行正常。 它的行為就像是跳過命令,但是從日志中我可以看到代碼已執行
原來,我存儲在服務器上的symfony系統變量還不夠。 從命令行開始執行命令就可以了,但是使用Cron時,您需要在.env文件中使用它們。 事實證明,在大量集成過程中,我只獲得了.env.dist
文件,而且無論如何我都必須制作.env
文件。 另外,我在cron中添加了兩行:
PATH=~/bin:/usr/bin/:/bin
SHELL=/bin/bash
然后從bash文件運行我的命令:
sudo /usr/bin/php -q /var/www/pww24/bin/console pww24:import asari $office > /dev/null
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.