BATCHER(8)
π batcher(8) β the InterNetNews batching girlie
okay so this is the batcher page from InterNetNews Documentation, manual section 8, and honestly bestie, she's giving "quiet backstage legend." let's get into it β¨
πΈ NAME πΈ
batcher β article batching for InterNetNews. that's it, that's the whole vibe. she batches articles. iconic behavior.
π SYNOPSIS π
batcher [-rv] [-a articles] [-A total-articles] [-b size] [-B total-
size] [-i string] [-N batches] [-p process] [-s separator] host [input]
yes the original wraps total- / size across lines like that, we're keeping it exactly, don't come for me π
β¨ DESCRIPTION β¨
so what does she actually do. okay: batcher reads a list of files and preps news batches for the specified host. she's generally used to prepare UUCP feeds, but the resulting batches can be used by literally any application that uses rnews(1) to inject the articles. no gatekeeping here.
normally she gets invoked by a script run out of cron that uses shlock to lock the host, followed by ctlinnd to flush the batch file. and if you want a front-end for batcher, go look at send-uucp(8) β she's the whole package, iykyk.
batcher reads the file input, or standard input if no file is given. if input is a relative file name, it's assumed to be in pathoutgoing as set in inn.conf. π«Ά
blank lines and lines starting with a number sign ("#") are ignored β she's not reading your hate comments, periodt.
all other lines in the input should consist of one or two fields separated by a single space. the first field is the storage API token of an article. the second field, if present, specifies the size of the article in bytes.
by default, batches get written to standard output β which isn't very useful if more than one batch is output β but see the -p option for the glow-up. β
π OPTIONS π
-aarticles β this flag limits the number of articles included in each batch. the default is no limit. a new batch gets started when either the total bytes or the number of articles written exceeds the specified limits. two limits, one vibe check. π₯-Atotal-articles β limits the total number of articles written for all batches. as soon as the total number of articles written to batches reaches or exceeds total-articles, all additional articles in the input will be deferred. default is no limit.-bsize β this one sets the size limit for each batch; as soon as at least this much data has been written out, a new batch will be started. the default size is60 KB. and using-b 0will allow unlimited batch sizes. go off, no cap. π-Btotal-size β limits the total number of bytes written for all batches. as soon as the total bytes written to batches reaches or exceeds total-size, all additional articles in the input will be deferred. default is no limit.-istring β a batch starts with an identifying line to specify the unpacking method to be used on the receiving end. when this flag is used, string, followed by a newline, will be output at the start of each batch. the default is to have no initial string β under the assumption that either the processor specified with the-pflag or some other later process will add the appropriate line. teamwork, bestie. π€-Nbatches β limits the total number of batches written. as soon as the number of batches written reaches or exceeds batches, all additional articles in the input will be deferred. default is no limit.-pprocess β by default, batches are written to standard output, which is not useful when more than one output batch is created. if this option is given, each batch will instead be fed via a pipe to the shell command process. the process argument must be ansprintf(3)format string, which may have a single"%s"parameter that will be replaced with the host name. main character energy fr fr π
a common value is:
( echo '#! gunbatch' ; exec gzip -c ) | uux - -r -z %s!rnews
which generates gzip-compressed batches and feeds them to uux. ate. π
-rβ by default,batcherreports errors topathlog/errlog. to suppress this redirection and report errors to standard error, use the-rflag. sometimes you just want the drama straight to your face, and that's valid. π-sseparator β each article in a batch starts with a separator line that indicates the size of the article. separator must be ansprintf(3)string, which may have a single"%ld"in the string that will be replaced with the size of the article. if the separator is not empty, a newline will also be appended to it when it's added to the beginning of each article.
the default separator is:
#! rnews %ld
and this should rarely be changed. like, genuinely, leave her alone. π
-vβ upon exit,batcherreports statistics viasyslog. with this flag, the statistics will also be printed to standard output. numbers!! we love numbers!! π
π¦ EXIT STATUS π¦
if the input is exhausted and all batches are created successfully, batcher will exit with a zero status. slay, no notes. β¨
if any of the limits specified with -A, -B, or -N flags are reached, or if there is an error in writing a batch, batcher will try to spool the remaining input by copying it to a file as follows:
- if there was no input filename, the remaining input will be copied to
pathoutgoing/host. - if an input filename was given, the remaining input will be copied to a temporary file named by appending
".bch"to the end of input β and qualified by addingpathoutgoingif input was not a fully qualified path. if this happens successfully,batcherwill then try to rename this temporary file to input, thus replacing input with a copy of itself with all of the lines for the successfully batched articles removed. she's cleaning up after herself, we stan a tidy queen π§
upon receipt of an interrupt or termination signal, batcher will finish batching the current article, close the batch, and then rewrite the batch file as described above. she finishes what she starts, no abandoning mid-sentence. π
π HISTORY π
written by Rich $alz <rsalz@uunet.uu.net> for InterNetNews. rewritten by Russ Allbery <eagle@eyrie.org> in POD. legends, both of them. π
β SEE ALSO β
ctlinnd(8), inn.conf(5), newsfeeds(5), rnews(1), send-uucp(8), shlock(8).
go read them, bestie, they're all part of the ecosystem π«Ά
β¨ that's the whole page β¨ and for the cute sign-off: this is INN 2.7.4, dated 2025-05-09, BATCHER(8) β catch you in the next batch, mwah ππΈ
π¦ where this page comes from
- arch rolling: inn 2.7.4-4 Β· ISC
- epel 10: inn 2.7.4-5.el10_3 Β· ISC AND BSD-3-Clause AND BSD-4-Clause AND FSFAP AND (GPL-1.0-or-later OR Artistic-1.0-Perl) AND GPL-3.0-or-later WITH Bison-exception-2.2 AND LicenseRef-Fedora-Public-Domain AND MIT AND NTP
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms