一区二区久久-一区二区三区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管道傳輸過來的內容,轉載需保留來源!

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

主站蜘蛛池模板: 久久99精品久久久久久久不卡 | 精品麻豆国语国拍视频在线 | 在线播放12p | 中文字幕在线观看一区二区三区 | 自偷自偷自亚洲首页精品 | 一级毛毛片毛片毛片毛片在线看 | 91视频国产精品 | 深爱五月激情 | 五月婷婷激情网 | 欧美成人亚洲欧美成人 | 亚洲伊人久久大香线蕉结合 | 国产成人午夜极速观看 | 深爱婷婷网| 激情深爱五月 | 美国一区二区三区 | 欧美日韩国产亚洲人成 | 亚洲欧洲无码一区二区三区 | 国产成人精品一区二三区 | 91久国产在线观看 | 九九九免费视频 | 韩国特级一级毛片免费网站 | 加勒比一本大道香蕉在线视频 | 久久午夜青青草原影院 | 国产激爽大片在线播放 | 在线成人免费 | 激情网页 | 91国偷自产一区二区三区 | 久久久久激情免费观看 | 青青自拍视频一区二区三区 | 久久精品国产屋 | 久久精品久久精品久久 | 日韩在线中文字幕 | 四色成人网| 九月丁香十月婷婷在线观看 | 91精品小视频 | 一区二区三区视频网站 | 国产视频精品免费 | 欧美亚洲视频 | 国产一区三区二区中文在线 | 国产精品视频一区二区噜噜 | 亚洲综合一二三区 |