• C

Piping Data from/to Other Program in UNIX

Hello,
I'm re-teaching my self C and am trying to do something that I have seen in PERL but doesn't appear to work the same in C. In PERL you can open a pipe to another program using the regular file open command. You do this by using the name of the program you want to pipe as the file name in the open command with the pipe character either before or after the program name depending on weather you want to pipe data in or out. Ounce its open you can read or write to it the same way you would to a disk file.

Now, I know that C uses the same concept of streams and piping is built into the UNIX environment so I'm pretty sure you can do it but I suspect the method is a little different then opening a disk file in C. Can anybody tell me how?

Thanks
grobinAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

julio011597Commented:
Yes, you are quite near to it.

The rilevant functions are popen() and pclose() (include <stdio.h>).

popen() returns a pointer to FILE, so you work with this pointer the same way you would with any "regular" file.

Try man popen for further details.

Regards
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
grobinAuthor Commented:
yup, that did it. Thanks a bunch


0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
C

From novice to tech pro — start learning today.