一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

php 讀取shell管道傳輸過來的內容

暮夏,您好!
rainbird給您發了短消息:
已經寫了不少后臺運行的deamon了.用的挺順手的,但是我現在想獲取管道傳過來的內容,不知道咋實現,類似echo "aaaa" |a.php,a.php怎么獲得echo的內容,不知道您有什么高見.
今天收到一條消息,解決的方法給大家分享一下:
實際上,shell 的 | 實際上表示的是 前一個的 標準輸出 作為后一個的標準輸入。雖然實現是通過pipe來實現的,
但是你寫php代碼的時候不需要知道底層的運作。你直接作為標準輸入讀取就可以了:
下面是一個實驗代碼:
復制代碼 代碼如下:
<?php
$fp = fopen("php://stdin", "r");
$s = '';
while (!feof($fp))
{
$s .= fgets($fp, 128);
}
var_dump($s);
fclose($fp);
?>

測試方法:
復制代碼 代碼如下:
ls -lh | php php_read_pipe.php

Rainbird 還給出更加簡單的代碼:
file_get_contents('php://stdin')
如果是有很多數據要傳輸過來,一般來說,是每4K傳輸一次。
直到傳輸完成。那可能不能簡單的使用:
file_get_contents('php://stdin')。這樣的話,一直會在等待。
分開處理的話,能夠,讀取一定的量后處理一部分。然后釋放掉一部分的內存。
比如我要遍歷所有的文件。可以這樣處理
find / | php php php_read_pipe.php
大家根據具體情況具體分析。

php技術php 讀取shell管道傳輸過來的內容,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲一区精品伊人久久 | 久热福利视频 | 亚洲午夜免费视频 | 精品国产网红福利在线观看 | 久久亚洲精品中文字幕三区 | 2021国产精品自产拍在线 | 一区二区三区中文国产亚洲 | www.亚洲天堂网 | 欧美日韩不卡码一区二区三区 | 色综久久天天综合绕视看 | 国产一区二区三区在线视频 | 国产大片中文字幕在线观看 | 高清一区高清二区视频 | 在线免费一区 | 亚洲一区综合 | 在线色综合 | 国产精品九九视频 | 日日插夜夜操 | 伊人久久免费视频 | 91麻豆影视| 手机在线观看黄色网址 | 天天干天天爽 | 97在线观看成人免费视频 | 色综合合久久天天综合绕视看 | 免费国产一区二区在免费观看 | 91久久线看在观草草青青 | 精品综合一区二区三区 | 91精品欧美一区二区三区 | 成人激情在线 | 亚洲综合三区 | 亚洲第一在线视频 | 综合亚洲色图 | 日韩精品一区二区三区在线观看 | 国产精品亚洲自在线播放页码 | 中文字幕日韩精品一区口 | 亚洲手机在线 | 91视频.com| 色播在线| 国产欧美另类久久久品 | 蜜桃久久久 | 色欧美在线视频 |