将基于Unix的PHP脚本转换为Windows的批处理文件

时间:2011-11-26 23:58:44

标签: php batch-file

我想将这个在Unix系统上运行良好的PHP脚本转换为Windows脚本。

我不知道如何重写它。有人能帮助我吗?

这是脚本:

$cmd = 'nohup sudo -u '.$user.' bash -c "cd ' .
escapeshellarg($path) . '; VVERBOSE=true QUEUE=' .
escapeshellarg($queue) . ' APP_INCLUDE=' .
escapeshellarg($bootstrap_path) . ' INTERVAL=' .
escapeshellarg($interval) . ' CAKE=' .
escapeshellarg(CAKE) . ' COUNT=' . $count .
' php ./resque.php';
$cmd .= ' > '. escapeshellarg($log_path).' 2>&1" >/dev/null 2>&1 &';

passthru($cmd);

1 个答案:

答案 0 :(得分:2)

passthru是PHP中的一种方法,请参阅http://php.net/manual/en/function.passthru.php

你知道这个剧本的作用吗?也许将它逆向工程到windows批处理脚本中?

从它的外观来看,脚本来自* nix系统:

  • 以另一个用户身份执行命令
  • 更改当前目录
  • 设置环境变量
  • 直接从PHP解释器调用PHP脚本并将日志转储到文件中,并将stderrs传递给/ dev / null

那个剧本是imo,不可能"隐蔽"到Windows批处理脚本(因为Windows!= POSIX),你需要重写它。