-
Notifications
You must be signed in to change notification settings - Fork 33
/
help-full.txt
610 lines (573 loc) · 38.1 KB
/
help-full.txt
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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
Nyuu
Flexible binary usenet poster
-----------------------------
Usage: nyuu [options] file1 file2 ...
All options take one parameter, except for those marked as a flag option.
Options can also be set using a custom config file (see `--config` option), in
which case, flag options, if set, can be unset by prefixing `no-` to the name,
for example, `--no-ssl` to explicitly disable SSL.
This is a full list of options. Use `--help` to see a summarized version.
Upload Server Options:
-h, --host Host/server to upload to. Prefix with `unix:` to
specify a Unix socket path.
SSL with Unix sockets requires NodeJS >= 0.12
-P, --port Port to connect to (default 119 or 563 if `--ssl`
is specified)
-6, --ipv6 Connect over IPv6 (flag option)
Requires NodeJS >= 0.12
--bind-host Local address to bind to
--tcp-keep-alive If set, enables TCP keep-alive with the probe
interval set the number specified.
-S, --ssl Connect over SSL/TLS (flag option)
--ignore-cert Ignore SSL certificate problems (flag option)
--sni-host SNI host name to send if connecting over SSL
--ssl-ciphers List of SSL ciphers to use, in OpenSSL format
See https://nodejs.org/api/tls.html for defaults
Requires NodeJS >= 0.12
--ssl-method Force SSL/TLS method. For details, see
`secureProtocol` at https://nodejs.org/api/tls.html
--ssl-ca PEM encoded file containing trusted CA for
certificate validation. Can be specified multiple
times. Specifying this option disables the default
CA trust store.
-u, --user Username to authenticate with
-p, --password Password to authenticate with
-n, --connections Number of connections to create for posting
(default 3)
--max-upload-rate Throttle rate at which posts are uploaded at. This
option is in the form {size}/{time}, for example
"10M/5s" which means 10 MiB per 5 seconds. If the
quantity is omitted, 1 is assume, e.g. "2M/s".
The size indicates the burst rate, so "2M/s" means
that 2 MiB must be sent before any throttling can
occur, whilst "10M/5s" allows a 10 MiB burst.
Set to 0 to disable.
--timeout Timeout on server responses (default 30s)
Set to 0 to disable (i.e. wait forever)
--connect-timeout Connect timeout (default 30s) Set to 0 to disable
--post-timeout Timeout on sending post data (default 120s)
Set to 0 to disable
--connect-retries Number of connection retry attempts (default 1)
--reconnect-delay Delay connection retries (default 15s)
--request-retries Number of request retry attempts (default 5)
--retry-on-bad-resp Treat bad responses as a request failure instead
of a fatal error (flag option)
--post-retries Number of post retry attempts in response to 441
errors (default 1)
--post-retry-delay Delay post retries (default 0s)
--post-fail-reconnect Treat posting failures as connection fatal errors.
This causes the connection to be reestablished in
response to this error (flag option)
If set, note that `--post-retries` and
`--post-retry-delay` options will be ignored.
--error-teardown Force teardown of bad connections (flag option).
If unset, bad connections are closed gracefully.
--disconnect-timeout How long to wait for a connection to disconnect
before forcefully tearing it down (default 5s).
Set to 0 to disable
--keep-alive Try to always keep connection alive even if not
needed (flag option).
Article/Post Options:
-a, --article-size Target size of each news post (default 700K). Note
that yEnc makes the actual size larger.
--article-line-size Target bytes per line (default 128)
-t, --comment Comment to insert before post subject
--comment2 Comment to append after post subject
-F, --group-files Group files by filename, similar to how indexers
would see them. This only affects the file counter
placed in the subject (flag option)
-s, --subject Subject to use for posts. The following
placeholders are available:
{filenum} Current file number in collection
{0filenum} Current file number in collection,
pre-padded with 0's
{files} Number of files in collection
{filename} File's name
{fnamebase} File's name without extension;
uses same logic as `--group-files`
{filesize} File's size in bytes
{fileksize} File's size in KiB, rounded to 2dp
Replace the 'k' with 'm', 'g', 't'
for sizes in MiB, GiB and TiB
respectively, e.g. {filemsize}
{fileasize} Friendly formatted file size, e.g.
'4.85 MiB' or '35.1 GiB'
{part} Article part number, starts at 1
{0part} Article part number, pre-padded
with 0's to be as long as {parts}
{parts} Number of articles for the file
{size} Article chunk size (before yEnc)
{comment} Value from `--comment`
{comment2} Value from `--comment2`
{timestamp} Unix timestamp of post
${rand(N)} Random text, N characters long
Default is similar to the following:
{comment} [{0filenum}/{files}] - "{filename}" yEnc ({part}/{parts}) {filesize} {comment2}
Note that {timestamp} and ${rand(N)} are different
for every post. They are not intended to be used
with `--subject`, but for `--message-id` instead.
Also note that this differs from the subject
option present in PowerPost based clients, as this
option specifies the entire subject. Nyuu does not
enforce any format and will not attempt to fix a
badly formed subject.
--filename How on disk file names are transformed into a
'filename' for use in posting. The following
placeholders are available:
{filename} Full file name and path as
specified in command supplied
{basename} Base file name without path
{pathname} Path component of file name
This also accepts the ${rand(N)} token (see
`--subject`).
Default is `{basename}` which effectively
discards path names.
Note that this option has no effect on files not
sourced from disk.
-f, --from Shortcut for `-H From=...`
Defaults to 'username <username@host>', where
these values are sourced from the local system.
-g, --groups Shortcut for `-H Newsgroups=...`
Separate multiple groups with commas, without any
spaces.
Defaults to alt.binaries.test
--date Override the Date header, Message-ID timestamp,
and timestamps for generated NZBs, with specified
date. This can be useful if you wish to expose
less timing information (or obfuscate your
timezone). Can use the special value 'now' to
refer Nyuu's start time. If unset (default), will
use the time at which each post is encoded. This
differs from 'now' in that it is not a fixed
timestamp across the whole run.
--message-id Format of generated Message-ID. See `--subject`
for available placeholders.
Default is similar to: ${rand(24)}-{timestamp}@nyuu
--keep-message-id Don't randomize Message-ID every time the post is
submitted. (flag option)
-H, --header Specify an NNTP header in either of these forms:
-H "MyHeader: MyValue"
-H MyHeader=MyValue
-H MyHeader
The first two set MyHeader to MyValue, whilst the
third unsets the header MyHeader.
This option can be specified multiple times. Note
that specifying the same header more than once is
currently not supported.
Tokens listed in the `--subject` option can be used
in the header value.
--yenc-name Override the value of the 'name' field in the yEnc
header. This option accepts the same tokens as
`--subject`, except for {size}, {timestamp}, {part}
and {0part}.
Default is `{filename}`
--article-encoding Character encoding used in article/yEnc headers.
Also affects NNTP commands. Accepted values are
`ascii`, `latin1` and `utf8` (default `utf8`)
Post Check Options:
You can prefix any of the options from the above "Upload Server Options"
section, with `--check-` to override that behaviour on these checking
connections. For example, `--check-host` overrides the `--host` parameter,
making Nyuu perform post checking on a different host. `--check-post-retries`
is unavailable as no posting is performed on these connections.
-k, --check-connections Number of connections to create for post checking
(default 0). Set to 1 to enable checking. Higher
numbers of connections are only useful if post
checking is bottlenecking the rest of the process.
Note that the total number of connections spawned
equals this number + `--connections`
--check-tries Maximum number of check attempts to perform.
A value of 0 disables post checking. (default 2)
--check-delay Initial delay after posting before performing
first check (default 5s)
--check-retry-delay Delay for check retries, if a check fails
(default 30s). Not used if `--check-tries` < 2
--check-post-tries Maximum number of attempts to re-post articles
that the post check could not find. Set to 0 to
disable re-posting articles (default 1)
--check-queue-size Max number of articles queued for checking.
Posting will stall if the number of articles to be
checked exceeds this number. Default 10000.
Other Upload/Check Options:
-e, --skip-errors Continue processing regardless of specified
errors. By default, Nyuu stops on all errors. You
can specify `--skip-errors all` to skip all
skippable errors, otherwise a comma separated list
of the following should be specified:
post-timeout: post request timed out; if set,
assumes post was successful
post-reject: server rejects sent post; if set,
assume post was successful
post-fail: posting failed for any reason; if
set, post is skipped
check-timeout: check request timed out; if set
assume check was successful
check-missing: post checking fails to find the
posted article; assume success
check-fail: check failed for any reason; if
set, assume success
connect-fail: connect/login failed for any
reason; if set, ignore failed
connections
Note that for requests that are retried (posting),
only the last result is considered.
Also note: Nyuu will exit with return code 32
instead of 0 if the process completes and errors
were skipped.
--post-error-limit If specified, and errors are being skipped with
`--skip-errors`, will limit the number of post
errors that are tolerated before aborting the post
process.
--use-lazy-connect Only create connections when necessary and prefer
using as few as possible (flag option).
--on-post-timeout A list of actions to take in response to a post
request timing out. Available actions are:
retry: re-send the post (default
`--request-retries` times)
strip-hdr=X: remove the header "X" and retry
ignore: assume post is successful and continue
- no further actions will be tried.
Note that `--skip-errors post-timeout`
will have no effect if this is set
List is comma separated; after all actions have
been tried, the post will fail. If this option is
supplied, `--request-retries` will not be used for
posts. Example usages:
--on-post-timeout retry,retry,ignore
Retry the post up to two times on timeout,
then just assume success
--on-post-timeout retry,strip-hdr=User-Agent,retry
1st timeout: retry post
2nd timeout: remove the User-Agent header,
then retry
3rd timeout: retry post (header still
removed)
4th timeout: give up and throw error
Note: removed headers stay removed, even when the
post is re-posted due to a check failure.
--post-method Command used for posting articles. Supported
commands listed below. Default is POST
POST
IHAVE
XREPLIC
TAKETHIS
Warning: XREPLIC only uses first specified group
and randomly generated article number
--use-ihave Alias for `--post-method IHAVE` (flag option)
Option is deprecated
--check-group Checking connections will be set to this group.
Some servers seem to want one set, otherwise
checking fails. If you set one, use a valid group
that you're not posting to, such as "bit.test"
NZB Output Options:
-o, --out If supplied, will write NZB to this file
Can be '-' which writes the NZB to stdout
You can also pipe this into the stdin of another
process by prefixing a command with `proc://`, for
example: `-o 'proc://cat>out.nzb'`, which is the
same as using `-o- | cat>out.nzb`. The stdout and
stderr of the process is discarded.
The following tokens are also supported (see
`--subject` for details):
{filenum}
{0filenum}
{files}
{filename}
{fnamebase}
{filesize}
{fileksize} also {filemsize} etc
{fileasize}
{part} (always is 1)
{0part}
{parts}
If tokens are used, multiple NZB files may be
created (or multiple processes spawned if proc://
is used)
Nyuu can also pipe to a specified fd if prefixed
with fd:// (requires NodeJS >= 0.12), i.e.
`fd://1` being a shortcut for stdout.
-O, --overwrite If NZB exists, overwrite it, otherwise will error
(flag option)
--nzb-del-incomplete Remove NZB file if Nyuu exits without finishing.
Note: deletion may not occur in the event of a
crash. (flag option)
--nzb-file-mode Strategy for writing NZB files. Options are:
stream: stream output to file (default)
defer: write file only at end, in one go
temp: stream to temp file, then rename at end
--minify Minify outputted NZB (flag option)
--nzb-compress Compress outputted NZB. Can be gzip, zlib, deflate
or brotli. (brotli requires NodeJS >= 11.7.0)
--nzb-compress-level Compression level (0-9) to use. Default is 6
For Brotli, range is 0-11, default being 11
--nzb-title A human-readable identifiable title for the
contents of the NZB
Shortcut for `-M title=...`
--nzb-tag An attribute of the NZB contents, such as "SD"
Can be specified multiple times
Shortcut for `-M tag=...`
--nzb-category Suggested category as used by your indexing
service (preferrably one, but can be specified
multiple times)
Shortcut for `-M category=...`
--nzb-password Attach a password to this NZB if its contents
requires one. Can be specified multiple times
if there are multiple passwords
Shortcut for `-M password=...`
-M, --meta Add a <meta> tag to the NZB. See `--header` option
above for syntax details; note that tokens are
unavailable.
--nzb-encoding Character encoding used in the NZB (default utf-8)
See the following for a list of valid encodings:
https://nodejs.org/api/buffer.html#buffer_buffers_and_character_encodings
--nzb-subject Override the subject specified in the NZB. By
default, Nyuu uses the Subject header sent for the
first article of each file. If you want the
subject specified in the NZB to differ from that
uploaded, use this option.
This option supports the same tokens as `--out`.
In addition, {value} can be used to obtain the
value from the header.
Default is {value}
--nzb-poster Override the poster specified in the NZB, which,
is taken from the From header by default. Details
are the same as `--nzb-subject` described above.
Default is {value}
Advanced Tuning Options:
--disk-req-size Disk read request size (default
roundup(1M, `--article-size`))
--disk-buf-size Number of requests to read-ahead (default 1). Set
to 0 to disable read-ahead buffering.
--nzb-cork Cork (buffer) all NZB output (flag option).
Requires NodeJS >= 0.12
--post-queue-size Max number of buffered articles for posting
(default min(round(`--connections`*0.5)+2,25))
--check-queue-cache Max number of articles to cache in the check queue
(default 5, or if un-seekable streams are present,
min(`--connections`*8, 100)). Cache is not used if
`--check-post-tries` is 0. Caching prevents
articles from being re-read off disk if reposting
is necessary. Note that if un-seekable streams are
present, this option will limit the max number of
articles that can be queued for checking, as these
posts cannot be dropped from cache.
--post-chunk-size Limit upload chunk size to specified amount. Set
to 0 to disable (default 192K if
`--max-upload-rate` not specified)
--use-post-pool Use a buffer pool to improve memory management.
Buffers are pre-allocated, which can also improve
performance, but can increase memory usage.
If not enabled, will rely on V8's GC to clean up
buffers. Default is enabled, and is a flag option.
Use `--no-use-post-pool` to disable the buffer
pool.
--connection-threads Number of threads to distribute connections over.
If set, posting connections will be allocated
evenly across the specified number of threads. A
value of 0 disables migrating connections to
threads, using default NodeJS behaviour of
handling connections on the main thread.
Running connections in separate threads is mostly
useful if TLS/SSL is enabled but connection speed
is being limited by how fast one CPU core can
encrypt data.
This option requires NodeJS >= 11.7 or NodeJS >=
10.5 with `--experimental-worker` flag set.
`--max-upload-rate` is not supported with
connection threading.
Default 0
--preload-modules Preload modules into Node's module cache before
starting (flag option). This is mostly a
workaround to Node's shortcomming of not being
able to load modules asynchronously. Usually is
slower, but may be useful if the CPU or disk is
overloaded.
Other Options:
--dump-failed-posts Write out articles that fail to post to this
location. Message-ID will be appended to this to
get the file name. This is a debugging feature
and should not be used unless needed.
--input-raw-posts Treat input files as raw posts to be uploaded
(flag option). All options for Articles/Posts, NZB
output and Input will be ignored, as well as
`--disk-*` options. `--keep-message-id` option is
also implied (use `--no-keep-message-id` to
disable).
This is the counterpart to `--dump-failed-posts`
as it can be used to re-post these failed posts.
--delete-raw-posts Delete successfully posted raw articles (flag
option). This only has any effect if the
`--input-raw-posts` flag is specified.
-E, --token-eval For all options which accept tokens (except
`--copy-input`), switches to an alternative
evaluation strategy, where the value is treated as
a Javascript template string. Note that variables
starting with '0' are not available.
Example value for `--subject`:
${filename}: part ${part-1} of ${parts}
WARNING: as the value is wrapped in a Javascript
template string (backticks), without escaping,
care must be taken when using backticks and
backslashes. For example, the following will cause
a syntax error:
--from 'A`nt ${Date.now()}'
The backtick above needs to be escaped with a
backslash, like in a template string.
NOTE: this syntax and rules are not considered
final, and may change in future Nyuu releases
This option takes no values. Requires NodeJS >= 4
UI Options:
-l, --log-level Controls the output verbosity, value can be:
0: completely silent (if command parsed)
1: only show errors
2: show warnings
3: show information (default)
4: show debugging info
-v, --verbose Alias for `-l4` (flag option)
-q, --quiet Alias for `-l2` (flag option)
--colorize Enable colors in terminal output (flag option)
Enabled by default if stderr is connected to a TTY
-T, --log-time Add timestamps to log entries (flag option)
--progress Progress/status display control.
Value can be one of the below; if parameters are
needed, they are appended onto the end, separated
by a colon
stderr: output a progress indicator to stderr
stderrx: as above, but alternative format with
more information
stdout: same as stderr but output to stdout
stdoutx: same as stderrx but output to stdout
log: output log entries every 60s showing
progress. Interval can be changed via the
parameter
tcp: start a TCP server which will spit out
status information on connect, then close
the connection
http: start a HTTP server which returns status
information
For both tcp and http options, you can specify a
host:port combo, or unix:/path/to/socket. If
unspecified, will default to listening on all
interfaces, on a random port.
This flag can be specified multiple times.
Default is `--progress stderr` if verbosity >= 3;
specify `--progress none` to suppress this.
Examples:
--progress log:30s
Logs progress every 30 seconds
--progress http:[2001::1]:1234
Start HTTP server on 2001::1 port 1234
--progress tcp:localhost
Start TCP server on localhost on random port
-C, --config Use a custom configuration file, see
config-sample.json for an example. The options
correspond with the command arguments documented
in this help file (full options only, short
aliases aren't supported).
Nyuu also accepts a complex config file, see
config.js for an example.
SECURITY WARNING: do not load untrusted config
files as they can be malicious
-?, --help Display a summarized list of options (flag option)
--help-full Display this help screen (flag option)
--version Print application version number (flag option)
--package-info Print detailed package/NodeJS info (flag option)
Input Files:
Additional arguments are taken as files to be posted. Directories can be
specified as well, in which case all files inside are processed according
to the following options:
-r, --subdirs How directories should be handled, can be:
skip: ignore nested files
include: include files in specified
directories without recursion
(default)
keep: upload all files in sub-directories
(with recursion)
-L, --skip-symlinks If specified, all symbolic links will be ignored.
Note that this affects file symlinks as well as
directory traversal (if `--subdirs=keep` is
specified). By default, all symlinks are followed.
This option takes no values.
--include-empty If specified, 0-byte files will not be skipped.
This option takes no values.
Alternatively, a list of files can be supplied, with the following options:
-i, --input-file Supply a text file which lists files, separated by
newlines, to be included as input. Can be `-` to
read from stdin, or a command prefixed with
proc:// to read from the stdout of specified
process (example: `proc://cat somefile.txt`). Can
also be an fd prefixed with fd:// (requires NodeJS
>= 0.12), i.e. `fd://0` is an alias for stdin.
Can be specified multiple times.
-0, --input-file0 Same as the `--input-file` option, except files
are separated by null characters instead of
newlines.
--input-file-enc Encoding used on all specified input files. Must
be a NodeJS recognised encoding, which includes
`utf8`, `utf16le` and `latin1`. Default is `utf8`.
Note that BOMs will not be interpreted.
Nyuu also supports piping inputs from a command, however, as yEnc requires
knowing exact file sizes in advance, this will need to be specified. The
syntax for specifying a process input is as follows:
procjson://"[name]",[size_in_bytes],"[command]"
After the prefix, this is actually a 3 element JSON encoded array, where the
square brackets are optional.
[name] refers to the filename that will be used, it is your responsibility
to ensure that there are no duplicates. [size_in_bytes] is the exact size of
the data to be emitted from [command], in bytes. [command] is the command
that will be executed, and its stdout will be uploaded. The stderr of this
process is discarded, and nothing will be sent to stdin. If a number is
supplied to [command] instead of a string, data will be read from the
specified file descriptor rather than executing a process (requires NodeJS
>= 0.12).
Note that quotation marks and some other special characters may need to be
escaped with backslashes, as per JSON encoding rules.
For example, here's an elaborate way to upload the 6KB image, trollface.jpg
as moe_kyun.jpg (note that `cat` is assumed to be the utility to read a file
to stdout):
nyuu -h 0 'procjson://"moe_kyun.jpg",6144,"cat trollface.jpg"'
Nyuu also supports copying input files to a file or process. The purpose of
this feature is to send the data to somewhere else without incurring the cost
of an additional disk read. This feature is currently EXPERIMENTAL.
The following options are available for copying input:
-I, --copy-input Copy each input into specified file or stdin of
specified process. See `--out` for syntax.
Special placeholders which can be used:
{filename}: upload name of the file (no path)
{size}: size of file in bytes
For example, the following can be used to
generate a list of MD5 hashes of the input files,
on Linux, without re-reading files off disk:
`-I 'proc://echo `md5sum|sed s/-//` {filename} >>md5list'`
WARNING: {filename} isn't sanitized in any way, so
take care when using it, especially when using it
in a command!
--copy-include Regular expression filter of which files to copy.
Only file names which match this filter will be
copied. Default ".*" (include all files).
--copy-exclude Regular expression exclusion filter over files to
copy. File names matching this expression won't
be copied. Default ".^" (no excluded files).
--copy-queue-size Maximum unconsumed buffer size for copied inputs.
If this buffer fills up, processing will slow down
until the other process consumes its piped data.
This value applies individually to each input
copied. Set to 0 for no limit. (default 4)
Note that this is somewhat connected to
`--post-queue-size`
Exit codes:
The end result can be determined from scripts by checking the exit code of
the run. The following exit codes are used by Nyuu:
0: no error occurred
1: invalid command/usage; for NodeJS >= 0.11, also used for crashes
8: for NodeJS version 0.10, process crashed
32: process completed, but with errors
33: process terminated due to an error
------------------
Examples
nyuu -h example.com some_file
Uploads some_file to the NNTP server at example.com
nyuu -h news.example.com -S -u cat -p nyahaha -n3 -f 'Cat <eager-poster@computer>' -g alt.binaries.multimedia -o my_cat.nzb my_cat.mp4
Uploads my_cat.mp4 to NNTPS server at news.example.com in group
alt.binaries.multimedia. Upload is performed using 3 connections.
The from username is specified, and Nyuu will output an NZB, my_cat.nzb.