Boruların genel kullanım şekli alt süreç olarak çalışan bir yazılım ile veri alışverişidir.
Bunu yapmanın bir yolu
pipe (boru oluşturmak için),
fork (alt süreç oluşturmak için),
dup2 (bir alt süreci bir boruyu standart girdi veya çıktı kanalı olarak kullanmaya zorlamak için) ve
exec (yeni bir yazılımı çalıştırmak için) birleşimini kullanmaktır. Ya da,
popen ve
pclose işlevlerini kullanabilirsiniz..
#include <stdio.h>
#include <stdlib.h>
void
write_data (FILE * akim)
{
int i;
for (i = 0; i < 100; i++)
fprintf (akim, "%d\n", i);
if (ferror (akim))
{
fprintf (stderr, "Akıma yazılamadı.\n");
exit (EXIT_FAILURE);
}
}
int
main (void)
{
FILE *cikti;
cikti = popen ("more", "w");
if (!cikti)
{
fprintf (stderr,
"ya parametre yanlis ya da dosya sayisi fazla.\n");
return EXIT_FAILURE;
}
write_data (cikti);
if (pclose (cikti) != 0)
{
fprintf (stderr,
"Artik calistirilamiyor veya baska bir hata var.\n");
}
return EXIT_SUCCESS;
}