FILECHAN(8)
NAME
filechan - file-writing backend for InterNetNews
SYNOPSIS
filechan [ -d directory ] [ -f fields ] [ -m mapfile ] [
-p pidfile ]
DESCRIPTION
Filechan reads lines from standard input and copies cer-
tain fields in each line into files named by other fields
within the line. Filechan is intended to be called by
innd(8) as a channel feed. (It is not a full exploder and
does not accept commands; see newsfeeds(5) for a descrip-
tion of the difference and buffchan(8) for an exploder
program.)
Filechan input is interpreted as a set of lines. Each
line contains a fixed number of initial fields, followed
by a variable number of filename fields. All fields in a
line are separated by whitespace. The default number of
initial fields is one.
For each line of input, filechan writes the initial
fields, separated by whitespace and followed by a newline,
to each of the files named in the filename fields. When
writing to a file, filechan opens it in append mode and
tries to lock it and change the ownership to the user and
group who owns the directory where the file is being writ-
ten.
OPTIONS
-f The ``-f'' flag may be used to specify a different
number of fields.
-d By default, filechan writes its arguments into the
directory /var/spool/news/out.going. The ``-d''
flag may be used to specify a directory the program
should change to before starting.
-p If the ``-p'' flag is used, the program will write
a line containing its process ID (in text) to the
specified file.
If filechan is invoked with ``-f 2'' and given the follow-
ing input:
news/software/b/132 lt;1643@munnari.oz.au foo uunet
news/software/b/133 lt;102060@litchi.foo.com uunet munnari
comp/sources/unix/2002 lt;999@news.foo.com foo uunet munnari
Then the file foo will have these lines:
news/software/b/132 lt;1643@munnari.oz.au
comp/sources/unix/2002 lt;999@news.foo.com
the file munnari will have these lines:
news/software/b/133 lt;102060@litchi.foo.com
comp/sources/unix/2002 lt;999@news.foo.com
and the file uunet will have these lines:
news/software/b/132 lt;1643@munnari.oz.au
news/software/b/133 lt;102060@litchi.foo.com
comp/sources/unix/2002 lt;999@news.foo.com
Because the time window in which a file is open is very
small, complicated flushing and locking protocols are not
needed; a mv(1) followed by a sleep(1) for a couple of
seconds is sufficient.
-m A map file may be specified by using the ``-m''
flag. Blank lines and lines starting with a number
sign (``#'') are ignored. All other lines should
have two host names separated by a colon. The
first field is the name that may appear in the
input stream; the second field names the file to be
used when the name in the first field appears. For
example, the following map file may be used to map
the short names above to the full domain names:
# This is a comment
uunet:news.uu.net
foo:foo.com
munnari:munnari.oz.au
HISTORY
Written by Robert Elz lt;kre@munnari.oz.au, flags added by
Rich $alz lt;rsalz@uunet.uu.net. This is revision 1.19,
dated 1996/10/29.
SEE ALSO
buffchan(8) innd(8) newsfeeds(5).