【问题标题】:php exec work is difference from cli and cronphp exec 工作与 cli 和 cron 不同
【发布时间】:2019-04-23 06:16:45
【问题描述】:

我创建了一个 test.php 文件并编写了一些代码

    $output = [];
    exec('ps aux', $output);
    var_dump($output);

当我从 cli 运行它时

php test.php

我得到的结果是正确的,例如

root 60826 0,0 0,0 12568 1612- IJ 21:14 0:00,00 cron:正在运行的作业 (cron)

但如果它添加到 crontab,我写响应文件,可以看到字符串被切断。示例

root 60826 0,0 0,0 12568 1612- IJ 21:14 0:00,00 cron:运行 j

我的操作系统 FREEBSD

【问题讨论】:

  • 您如何将响应写入文件?
  • 添加到 crontab 如 1 * * * * command > file
  • 来自箭头的好解决方案

标签: php cron exec freebsd


【解决方案1】:

默认情况下,ps 实用程序会尝试猜测终端大小并据此削减其输出。尝试添加-ww 标志以使其不考虑终端大小。

【讨论】:

  • 如果您使用fwrite() 写入文件并设置了长度参数,请增加或完全删除它。
  • 标志 -ww 太棒了!非常感谢
猜你喜欢
  • 2016-09-02
  • 2010-11-09
  • 2017-03-09
  • 2011-12-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多