22 Ocak 2016 Cuma

POpen-PClose ile Read Write İşlemleri

#include 

int main(void)
{
        FILE *pipein_fp, *pipeout_fp;    
//pipein ve pipeout için Dosya yolu tanımlıyoruz
        char readbuf[80];                      
 //Char dizisini tanımladık

        /* Create one way pipe line with call to popen() */
        




if (( pipein_fp = popen("ls ", "r")) == NULL)      
 //Okumak İçin Boru Hattını Açıyor ls ile Dosya yolumuzdaki Dosya Adlarını Okuyoruz
        {
                perror("popen");         //Eger Acımladı İse Hata Veriyoruz 
                exit(1);
        }

        /* Create one way pipe line with call to popen() */
        if (( pipeout_fp = popen("sort", "w")) == NULL)    
 //Dosya Yolunu yazmak icin acıyoruz ve Sort Ederek Yazıyoruz
        {
                perror("popen");  
                exit(1);
        }

        /* Processing loop */
        while(fgets(readbuf, 80, pipein_fp))     
   //Readbuf  Tamponuna pipeinfp nin icindekileri alıyoruz 
                fputs(readbuf, pipeout_fp);         
   //Readbuf  ile Pipeout ile ekrana yazdıroyrz
   
        /* Close the pipes */
        pclose(pipein_fp);                //Boru hatlarını Kapatıyoruz
        pclose(pipeout_fp);

        return(0);
}

Share: