magento show cron job list

https://gist.github.com/werdan/5827225

<?php
  // shell/listAllCron.php
  require_once 'abstract.php';
   
  class Mage_Shell_CronLister extends Mage_Shell_Abstract
  {
  public function run()
  {
  $cronJobs = Mage::app()->getConfig()->getNode('crontab/jobs');
   
  $outputFormat = "%-60s %-20s %-50s";
   
  printf($outputFormat . "\n", "Job name", "m h dom mon dow", "Object::Method to execute");
  $lines = "Job name, m h dom mon dow, Object::Method to execute";
   
  foreach($cronJobs->children() as $key => $job) {
  $expr = trim((string) $job->schedule->cron_expr);
  $datas[$key] = sprintf($outputFormat, trim($job->getName()), $expr, trim((string) $job->run->model));
  $datas_csv[$key] = array(trim($job->getName()), $expr, trim((string) $job->run->model));
  }
   
  uksort($datas, array($this, 'compareTimes'));
   
  foreach($datas as $job) {
  echo $job . "\n";
  }
  }
   
  public function compareTimes($time1, $time2)
  {
  $times1 = explode(' ', $time1);
  $times2 = explode(' ', $time2);
   
  if(( ! isset($times1[1])) || ($times1[1] == '*')) return -1;
   
  if(( ! isset($times2[1])) || ($times2[1] == '*')) return 1;
   
  $times1[1] = (int) trim($times1[1]);
  $times2[1] = (int) trim($times2[1]);
  $times1[0] = (int) trim($times1[0]);
  $times2[0] = (int) trim($times2[0]);
   
  if($times1[1] != $times2[1]) {
  $res = ($times1[1] - $times2[1]) * 1000;
  return $res;
  }
   
  return $times1[0] - $times2[0];
  }
  }
   
  $cronLister = new mage_Shell_CronLister();
  $cronLister->run();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值