libmaketmpfilefd man page

pm_make_tmpfile_fd() — create a temporary named file

Synopsis

#include <netpbm/pm.h>

pm_make_tmpfile(int *         fdP,
                const char ** filenameP);

Example

This simple example creates a temporary file, writes "hello world" to it, then writes some search patterns to it, then uses it as input to grep:

#include <netpbm/pm.h>

int fd;
const char * myfilename;

pm_make_tmpfile_fd(&fdP, &myfilename);

write(fd, "^account:\\s.*\n", 16);
fprintf(fd, "^name:\\s.*\n", 13);

close(fd);

asprintfN(&grepCommand, "grep --file='%s' /tmp/infile >/tmp/outfile");

system(grepCommand);

strfree(grepCommand);

unlink(myfilename);

strfree(myfilename);

Description

This library function is part of Netpbm(1)

pm_make_tmpfile_fd() is analogous to pm_make_tmpfile()(1) difference is that it opens the file as a low level file, as open() would, rather than as a stream, as fopen() would.

If you don't need to access the file by name, use pm_tmpfile_fd() instead, because it's cleaner. With pm_tmpfile_fd(), the operating system always deletes the temporary file when your program exits, if the program failed to clean up after itself.

History

pm_tmpfile() was introduced in Netpbm 10.42 (March 2008).

Document Source

This manual page was generated by the Netpbm tool 'makeman' from HTML source. The master documentation is at

http://netpbm.sourceforge.net/doc/libma…

Info

31 December 2007 netpbm documentation