¿Cómo puedo ejecutar Cron desde la línea de comandos manualmente?
En Magento 1.x podemos ejecutar cron como:
www.testsite.com/cron.php
pero en magento 2, ¿cómo puedo hacer esto?
Por favor, ayúdame también para saber cómo puedo ejecutar cron desde cmd. Ya utilicé el siguiente comando que no funciona:
sudo php bin/magento cron:run [--group="customgroupname_cron"]
Esta es la excepción de retorno:
[RuntimeException]
Too many arguments.
cron:run [--group="..."] [--bootstrap="..."]
------- Actualización -------
crontab.xml
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Cron:etc/crontab.xsd">
<group id="customgroupname_cron">
<job name="customgroupname_cron" instance="Namespace\Modulename\Cron\Customcronjob" method="execute">
<schedule>* * * * *</schedule>
</job>
</group>
</config>
En el método de ejecución del archivo anterior pongo log. Pero después de 1 minuto tampoco se genera eso. Entonces, ¿cómo puedo saber que mi método se ejecuta?
Respuestas:
No necesita los corchetes cuando ejecuta el comando, por lo que debe ejecutar:
fuente
Combiné un poco las otras respuestas de esta publicación, por lo que solo se necesita un archivo y los trabajos cron se pueden ejecutar a través del navegador o la línea de comandos.
Uso a través de la línea de comando:
Uso a través del navegador:
Instalación
Sugiero copiar el código fuente desde abajo y almacenarlo en
src/pub/hidden/cronLaunch.php
. ¡Es muy importante proteger elhidden
directorio de cualquier acceso no autorizado!¡Gracias y créditos a todas las demás personas que publicaron respuestas aquí!
fuente
Los
[]
corchetes en un prototipo de línea de comando simplemente indican que los argumentos que contienen son opcionales.En este caso, también establece que son encadenables.
fuente