summaryrefslogtreecommitdiff
path: root/reference/C/FUNCTIONS/popen.html
blob: ac93bec077009faaac8f707df288359ae6acd076 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
<title>popen function</title>

<head>
<script language="JavaScript">
</script>
</head>

<body bgcolor=#ffffcc>
<hr>
<center>
<h1>popen function</h1>
</center>
<hr>
<p>
<b>popen</b> is used to read and write to a unix pipe.<p> This function is NOT
included in 'C Programming Language' (ANSI) but can be found in 'The Standard
C Library' book.

<pre>
Library:   stdio.h

Prototype: FILE *popen(const char *command, const char *type);

Syntax:    FILE *fp;
	   fp = popen( "ls -l", "r");

Notes:
	command - is the command to be issued.
	type    - r - read O/P from command.
                - w - Write data as I/P to command.

</pre>
<hr>
<h2>Examples:</h2>
<img src=../../GRAPHICS/computer.gif></a>
<a href=../EXAMPLES/popen.c> example program.</a><p>

<hr>
<h2>Notes:</h2>
<ul>
<li>popen will always execute the command from within the Bourne shell.
<li>popen feeds the STDOUT back to your program. If you want STDERR, 
the following will do the trick.
<pre>
	fp=popen("ls -l 2>&1", "w");
		        AAAA
		        ||||
</pre>
</ul>
<hr>
<h2>See Also:</h2>
<ul>
<li><a href=fgetc.html>fgetc</a> Get a character from a file.
<li><a href=files.html>fputc</a> Put a character into a file.<i>man pages</i>
<li><a href=fprintf.html>fprintf</a> Put a formatted line into a file.
<li><a href=fopen.html>fopen</a> Open a file.
<li><a href=fclose.html>fclose</a> Close a file.
<li><a href=pclose.html>pclose</a> Close a pipe.
<li><a href=system.html>system</a> Open a pipe.
</ul>


<p>

<hr>
<p>
<center>
<table border=2 width="80%" bgcolor="ivory">
<tr align=center>
<td width="25%">
<a href="../cref.html">                  Top</a>
</td><td width="25%">
<a href="../master_index.html">          Master Index</a>
</td><td width="25%">
<a href="../SYNTAX/keywords.html">                 Keywords</a>
</td><td width="25%">
<a href="funcref.htm">      Functions</a>
</td>
</tr>
</table>
</center>
<p>
<hr>
<address>Martin Leslie 
</address><p>
</body>
</html>