#include <sys/types.h> #include <unistd.h> #include <stdlib.h> #include <stdio.h> #include <string.h> int main(int argc,char *argv[]) { FILE *stream; FILE *wstream; //定義兩個(gè)文件流 char buf[1024]; //定義以緩沖區(qū) if(argc != 2) //如果文件參數(shù)不正確 { printf("請(qǐng)輸入正確的文件參數(shù)\n"); exit(1); } memset(buf,'a',sizeof(buf)); //初始化buf,以免后面寫如亂碼到文件中 stream = popen("ls -l", "r" ); //將“l(fā)s -l”命令的輸出 通過(guò)管道讀取(“r”參數(shù))到FILE* stream wstream = fopen(*(argv+1), "w+"); //新建一個(gè)指定的的文件 fread(buf, sizeof(char), sizeof(buf), stream); //將剛剛FILE* stream的數(shù)據(jù)流讀取到buf中 fwrite(buf, 1, sizeof(buf), wstream );//將buf中的數(shù)據(jù)寫到FILE*wstream對(duì)應(yīng)的流中,也是寫到文件中 pclose(stream ); fclose(wstream ); //關(guān)閉退出 return 0; }
本文標(biāo)題:[Linux管道和IPC]管道的高級(jí)應(yīng)用--使用popen函數(shù)創(chuàng)建管道
URL地址:http://jinyejixie.com/article40/gdjceo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、微信公眾號(hào)、、ChatGPT、App設(shè)計(jì)、微信小程序
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)