【发布时间】:2023-04-07 05:55:01
【问题描述】:
我搜索了高低,但我发现的所有建议和提示由于某种原因都不起作用。我有一个正在调用的批处理文件:
cmd /C "automateMyProgram.bat >> automation.log 2>>&1"
效果很好:automation.log 会加载该特定批处理文件的所有标准输出和标准错误。但是,在该批处理脚本中,我有以下命令:
start php updateDB.php param1 param2 ^> updateDB.log
php 脚本执行得很好,并且读取参数也很好,但是 updateDB.log 从未创建。我确保将 php.ini 文件中的 php 错误报告设置为将错误输出到命令行界面。我需要记录到日志中的 php 脚本中有几个 echo 语句,但由于某种原因它们没有被输出。我读到如果您使用 start 命令调用程序,则必须使用插入符运算符重定向输出,因为程序是在新进程中启动的。我也试过了:
start php updateDB.php param1 param2 >> updateDB.log
这也没有用。于是我又试了:
start /B "Database Update" "php" "param1" "param2" >> updateDB.log
这在批处理文件中不起作用,但是当我将它直接复制并粘贴到桌面上的 cmd 窗口中时它起作用了。
你们中有人知道如何重定向从批处理文件调用的 php 脚本的输出吗?
感谢您的宝贵时间和帮助!
【问题讨论】:
标签: php windows scripting batch-file