php 执行命令屏幕输出捕捉,在php执行linux命令时显示所有输出
為了方便,給測試地址做了git hook,可以參考之前的文章,利用git的hook自動部署代碼。現在發現使用exec之類的命令無法獲取到錯誤的輸出,獲取到的結果相對于直接在終端執行命令少了很多信息,這很不方便調試。
Updating 0430ef4..377d045
在終端則是
Updating 0430ef4..377d045
error: Your local changes to the following files would be overwritten by merge:
public/coding.php
Please, commit your changes or stash them before you can merge.
Aborting
下面這么多的錯誤信息都沒了,沒辦法知道是因為什么卡住,開始以為PHP函數原因,后來google了一下,才發現是需要更改一下shell的錯誤輸出重定向,使用如下即可
cd /home/wwwroot/*** && /usr/bin/git pull 2>&1
修改之后獲取到的錯誤信息如下
error: Your local changes to the following files would be overwritten by merge: public/coding.php
Please, commit your changes or stash them before you can merge.
Aborting
Updating 0430ef4..fac8fed
正確的如下
From https://git.coding.net/****/****
4454adb..40ba1aa develop -> origin/develop
Updating 4454adb..40ba1aa
Fast-forward
readme.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
這樣就很直觀了
分享本文到:
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的php 执行命令屏幕输出捕捉,在php执行linux命令时显示所有输出的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java用一张一元票换一分,java测试
- 下一篇: python找人,PythonOpenC