一区二区久久-一区二区三区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免费精品视频 | 日韩欧美成人乱码一在线 | 亚洲图片在线视频 | 成人三级视频在线观看 | 日本一区二区三区视频在线 | 福利片在线看 | 在线观看黄色网 | 欧美特黄a级片 | 97色婷婷成人综合在线观看 | 亚洲第一色图 | 国产成人mv在线观看入口视频 | 精品国精品国产自在久国产不卡 | 日本精品一区二区三区在线视频| 一国产大片在线观看 | 久久久91精品国产一区二区三区 | 丁香六月在线 | 精品久久精品久久 | 亚洲乱亚洲乱妇41p国产成人 | 亚洲综合激情六月婷婷在线观看 | 国产免费播放一区二区三区 | 久久综合一区二区三区 | 91中文字幕视频 | 操亚洲 | 亚洲日本中文字幕在线2022 | 国产美女在线精品亚洲二区 | 色视在线| 激情小视频在线观看 | 亚洲黄色高清 | 婷婷精品视频 | 中文字幕精品一区二区日本 | 色天天天综合色天天碰 | 三级黄网站 | 岬奈一区二区中文字幕 | 亚洲成人中文 |