1Netpbm subroutine liNbertaprbym:spLumib_brmroaaukrteyi_ntFemupnlfciitblireoa_nrfsyd:(M)apnmfu_uamnlacktei_otnm(p3f)ile_fd() function(3)
2
3
4
6 pm_make_tmpfile_fd() - create a temporary named file
7
8
10 #include <netpbm/pm.h>
11
12 pm_make_tmpfile(int * fdP,
13 const char ** filenameP);
14
15
17 This simple example creates a temporary file, writes 'hello world' to
18 it, then writes some search patterns to it, then uses it as input to
19 grep:
20
21 #include <netpbm/pm.h>
22
23 int fd;
24 const char * myfilename;
25
26 pm_make_tmpfile_fd(&fdP, &myfilename);
27
28 write(fd, '^account:\\s.*\n', 16);
29 fprintf(fd, '^name:\\s.*\n', 13);
30
31 close(fd);
32
33 asprintfN(&grepCommand, 'grep --file='%s' /tmp/infile >/tmp/outfile');
34
35 system(grepCommand);
36
37 strfree(grepCommand);
38
39 unlink(myfilename);
40
41 strfree(myfilename);
42
43
44
46 This library function is part of Netpbm(1).
47
48 pm_make_tmpfile_fd() is analogous to pm_make_tmpfile()[22m(1).Theonly dif‐
49 ference is that it opens the file as a low level file, as open() would,
50 rather than as a stream, as fopen() would.
51
52 If you don't need to access the file by name, use pm_tmpfile_fd()
53 instead, because it's cleaner. With pm_tmpfile_fd(), the operating
54 system always deletes the temporary file when your program exits, if
55 the program failed to clean up after itself.
56
57
58
60 pm_tmpfile() was introduced in Netpbm 10.42 (March 2008).
61
62
63
64netpbm documentationNetpbm subro3u1tiDneecelmibberrar2y0:07pm_make_tmpfile_fd() function(3)