Command Line Reference
Command line in NZBGet consist of one command and any number of options. The commands can be divided into local commands and remote commands.
In the description on this page the character $
at the beginning of the line represents command line prompt. You shouldn’t type it. The purpose of it is to help you differentiate the typed commands from the received output.
Contents
- Common options
- Local commands
- Remote commands
- Command –quit
- Command –append
- Command –connect
- Command –list
- Files in download queue
- Groups in download queue
- Jobs in post-processor queue
- Items in history
- Server status
- Command –pause
- Pause download
- Pause post-processor
- Pause scan
- Command –unpause
- Unpause download
- Unpause postprocessor
- Unpause scan
- Command –rate
- Command –log
- Command –scan
- Command –edit
- Individual files
- Groups
- Post-processor queue
- History list
- Command –write
Common options
Common options are used in addition to local or remote commands. There are some options that can be used only as additional options for special remote commands. These options are described with commands they belong to.
Option –configfile
By default NZBGet looks for configuration file in well known places (/etc, /opt/etc and other common directories). With option --configfile
(short form -c
) you can pass the name of configuration file directly and so disable the automatic search. Example:
$ nzbget -c /home/user/nzbget-config.conf -v
Command -v/--version
used here prints the program’s version - see later.
Option –option
In additions to configuration file any option can be passed via command line using switch --option
(short form -o
). The syntax:
-o
For example to disable the automatic scanning of incoming nzb-directory you can set configuration option NZBDirInterval to “0”:
$ nzbget -o NZBDirInterval=0 -D
Command -D/--daemon
used here starts the server - see later.
Option –noconfigfile
With switch --noconfigfile
(short form -n
) the program can be used without configuration. In that case all required configuration options must be passed via command line with switch --option
. In following example the version of nzbget used on remote server is printed:
$ nzbget -n -o ControlIP=192.168.1.1 -o ControlPort=6789 -o ControlPassword=mysecret -V
Request sent
server returned: 15.0-testing-r1286
Local commands
Command –help
Command --help
(short form -h
) prints the list of available command line options.
$ nzbget -h
Usage:
nzbget [switches]
Switches:
-h, --help Print this help-message
-v, --version Print version and exit
-c, --configfile Filename of configuration-file
-n, --noconfigfile Prevent loading of configuration-file
(required options must be passed with --option)
-p, --printconfig Print configuration and exit
-o, --option Set or override option in configuration-file
Command –version
Command --version
(short form -v
) prints the version of currecnt binary:
$ nzbget -v
nzbget version: 0.7.0-testing-r339M
Command –printconfig
To check what configuration file and what options are currently being used:
$ nzbget -p
ConfigFile = "/usr/local/root/.nzbget"
AppBin = "/tmp/local/root/nzbget"
AppDir = "/tmp/local/root"
Version = "0.7.0-testing-r339M"
TempDir = "/usr/local/root/download/tmp"
DestDir = "/usr/local/root/download/dst"
QueueDir = "/usr/local/root/download/queue"
NzbDir = "/usr/local/root/download/nzb"
LogFile = "/usr/local/root/download/dst/nzbget.log"
LockFile = "/tmp/nzbget.lock"
CreateLog = "yes"
AppendNzbDir = "yes"
AppendCategoryDir = "yes"
OutputMode = "ncurses"
Command –server
Command --server
(short form -s
) starts NZBGet in server console mode:
$ nzbget -s
Console mode means that the program work in interactive mode: it prints output and still can be controlled via keyboard. Use Ctrl+C to terminate.
You can choose one of the three output modes:
- Log - prints only log-messages;
- Color - prints colored log-messages and a status line;
- Curses - interactive frontend (text mode).
The output depends on configuration option OutputMode. See the description of the option in configuration file for more info. For example to set OutputMode to “curses”:
$ nzbget -s -o OutputMode=curses
If you want to run the server in background use command --daemon
instead of --server
.
When working in server mode NZBGet server can be controlled using client-commands, described later in this document.
Command –daemon
Command --daemon
(short form -D
) starts NZBGet in server daemon mode:
$ nzbget -D
The daemon mode is similar to console server mode (command --server
), but the server works in background.
When working in daemon mode NZBGet server can be controlled using client-commands, described later in this document.
Remote commands
Remote commands communicate with NZBGet server. The server can be running on the same machine or on another machine in the network. To use remote commands the configuration option ControlIP must point to the NZBGet server and configuration options ControlPort and ControlPassword must be the same as in configuration used on server.
NOTE: if ControlIP on server is set to “localhost” or “127.0.0.1” you will be able to connect to the server only from the same machine. To connect from other computers you should set the option ControlIP on server to an IP-address accessible from network, for example “192.168.1.1”.
Command –quit
Use command --quit
(short form -Q
) to stop the server:
$ nzbget -Q
Request sent
server returned: Stopping server
Command –append
Command --append
(short form -A
) sends NZB-file or URL to server.
To send nzb-file:
$ nzbget -A /path/to/My.File.nzb
Request sent
server returned: Collection My.File.nzb added to queue
NOTE: You can also add files to download queue by simply saving them into incoming nzb-directory. See configuration option NzbDir for details.
To send URL:
$ nzbget -A http://server.com/path/to/nzb/file.nzb
Request sent
server returned: Url http://server.com/path/to/nzb/file.nzb added to queue
The command has several options which can be passed before the last parameter (nzb-file or url):
- T - Add file to the top (beginning) of queue
- P - Pause added files
- C <name> - Assign category to nzb-file
- N <name> - Use this name as nzb-filename (only for URLs)
- I <priority> - Set priority (signed integer)
The name, category and priority can be also set or changed later with command --edit
.
Command –connect
With command --connect
(short form -C
) you can connect the client to remote server. You will see the log-output of server:
$ nzbget -C
Similar to server console mode you can choose one of the three output modes:
- Log - prints only log-messages;
- Color - prints colored log-messages and a status line;
- Curses - interactive frontend (text mode).
For example to set OutputMode to “curses”:
$ nzbget -C -o OutputMode=curses
Command –list
Command --list
(short form -L
) requests the list of items from server and or statistical data. There are four kind of lists which can be received with command --list
:
- F - files in download queue;
- G - groups in download queue;
- O - jobs in post-processor queue;
- H - items in history.
Subcommand “F” (files in download queue) is used by default if none of subcommands were specified.
Files in download queue
To print individual files from download queue use subcommand “F”:
$ nzbget -L F
Request sent
Queue List
-----------------------------------
[103] Ubuntu 2006\linux.ubuntu.dvdr.r02 (49.30 MB)
[104] Ubuntu 2006\linux.ubuntu.dvdr.r00 (49.29 MB)
[105] Ubuntu 2006\linux.ubuntu.dvdr.r01 (49.31 MB)
[106] Ubuntu 2006\linux.ubuntu.dvdr.r03 (49.35 MB)
-----------------------------------
Files: 107
Remaining size: 4669.86 MB (+244.50 MB paused)
Current download rate: 0.0 KB/s
Session download rate: 0.0 KB/s
Speed limit: 100.0 KB/s
Up time: 00:01:35
Download time: 00:00:00
Downloaded: 0.00 MB
Threads running: 5
Server state: Paused
The numbers in square braces are IDs of the files. These IDs are needed by command –edit.
Groups in download queue
Groups are nzb-files. Each group can contain one or more individual files. To print download queue as groups use subcommand “G”:
$ nzbget -L G
Request sent
Queue List
-----------------------------------
[103-209] Ubuntu 2006
[210-354] Debian DISK1
[355-489] Debian DISK2
-----------------------------------
Files: 450
Remaining size: 12669.21 MB (+644.50 MB paused)
Current download rate: 0.0 KB/s
Session download rate: 0.0 KB/s
Speed limit: 100.0 KB/s
Up time: 00:01:35
Download time: 00:00:00
Downloaded: 0.00 MB
Threads running: 5
Server state: Paused
The numbers in square braces are IDs of the files (first and last). These IDs are needed by command –edit.
‘NOTE:’ if you reorder individual files it is possible that the files from one group will be mixed with another:
[103] Ubuntu 2006\linux.ubuntu.dvdr.r02 (49.30 MB)
[241] Debian DISK1\debian.disk1.dvdr.r00 (51.00 MB)
[105] Ubuntu 2006\linux.ubuntu.dvdr.r01 (49.31 MB)
The groups are listed in order according to the first file of this group in download queue.
Jobs in post-processor queue
To print jobs from post-processor queue use subcommand “O”:
$ nzbget -L O
Request sent
Post-Processing List
-----------------------------------
[2] Ubuntu 2006/linux.ubuntu.dvdr.rar
-----------------------------------
The numbers in square braces are IDs of the jobs. These IDs are needed by command –edit.
Items in history
To print history use subcommand “H”:
$ nzbget -L H
Request sent
History (recent items first)
-----------------------------------
[5] Debian DISK2 (104 files, 4.22 GB, Par failed, Script failed)
[4] Debian DISK1 (85 files, 3.97 GB, Script successful)
[2] Ubuntu 2006 (111 files, 4.79 GB, Script successful)
-----------------------------------
Items: 3
The numbers in square braces are IDs of the history items. These IDs are needed by command –edit.
Server status
The subcommands “F” and “G” in addition to file or group lists print server status. This info can be also printed without lists using subcommand “S”:
$ nzbget -L S
Request sent
Remaining size: 0.00 MB
Current download rate: 0.0 KB/s
Session download rate: 346.7 KB/s
Up time: 45:02:32
Download time: 20:53:38
Downloaded: 25467.91 MB
Threads running: 4
Server state: Stand-By
Command –pause
Command --pause
(short form -P
) requests the server to pause:
- <empty> or D - pause download;
- O - pause postprocessor;
- S - pause scan.
Pause download
To pause download queue use command --pause
without any subcommands:
$ nzbget -P
Request sent
server returned: Pause-/Unpause-Command completed successfully
The server completes active article downloads before pausing.
You can also specify subcommand “D” with the same effect:
$ nzbget -P D
Pause post-processor
The subcommand “O” pauses post-processor queue:
$ nzbget -P O
Request sent
server returned: Pause-/Unpause-Command completed successfully
Server pauses the processing of post-processor queue and also attempts to pause the active post-processing job: par-jobs can be paused mostly instantly. The pausing of a script job can take several seconds but sometimes is not possible at all. Technically the pausing of a script job is performed in a following way: during execution of a script nzbget constantly processes script’s output and redirects it to nzbget’s log. After a text line is received from the script nzbget checks the pause-state of post-processor. If it is paused nzbget doesn’t return the execution to the script until the post-processor is unpaused. This means that the script should prints messages possibly often. For example, when executing unrar-command the output of unrar should not be redirected to /dev/null.
Pause scan
Subcommand “S” pauses the automatic scanning of incoming nzb-directory:
$ nzbget -P S
Request sent
server returned: Pause-/Unpause-Command completed successfully
When the automatic scanning is paused it is still possible to process incloming nzb-directory by manually executing of command --scan
.
Command –unpause
Command --unpause
(short form -U
) requests the server to resume:
- <empty> or D - unpause download;
- O - unpause postprocessor;
- S - unpause scan.
Unpause download
To resume download queue use command --unpause
without any subcommands:
$ nzbget -U
Request sent
server returned: Pause-/Unpause-Command completed successfully
You can also specify subcommand “D” with the same effect:
$ nzbget -U D
Unpause postprocessor
The subcommand “O” resumes postprocessor queue:
$ nzbget -U O
Request sent
server returned: Pause-/Unpause-Command completed successfully
Unpause scan
Subcommand “S” resumes the automatic scanning of incoming nzb-directory:
$ nzbget -U S
Request sent
server returned: Pause-/Unpause-Command completed successfully
Command –rate
Command --rate
(short form -R
) sets download rate (other names: speed limit, bandwidth throttling) on server in KB/s. In following example we set speed limit to 200 KB/s:
$ nzbget -R 200
Request sent
server returned: Rate-Command completed successfully
The limit effects all connections. Special value ‘0’ disables the speed control (no limit).
Command –log
Command --log
(short form -G
) prints messages saved in server’s screen buffer. The command requires one parameter number of lines. Example for printing of last 20 messages:
$ nzbget -G 20
Request sent
Log (last 20 entries)
-----------------------------------
[INFO] nzbget 0.7.0-testing server-mode
[INFO] Unpausing download
[INFO] Deleting file Linux.Ubuntu.dvdr.r02 from download queue
[DETAIL] Downloading Ubuntu 2006\Linux.Ubuntu.dvdr.r01 [2/79] @ europe.news.astraweb.com
[DETAIL] Downloading Ubuntu 2006\Linux.Ubuntu.dvdr.r01 [1/79] @ europe.news.astraweb.com
[ERROR] Authorization for europe.news.astraweb.com failed
(Answer: 502 Invalid username or password)
[WARNING] Article Ubuntu 2006\Linux.Ubuntu.dvdr.r01 [2/79] @ europe.news.astraweb.com failed
[DETAIL] Waiting 10 sec to retry
-----------------------------------
Options InfoTarget, ErrorTarget, etc in configuration file on server determine what messages should be saved to screen log buffer. Specifiyng of these options in remote client does not effect filtering.
Command –scan
Command --scan
(short form -S
) forces the server to scan incoming nzb-firectory for nzb-files:
$ nzbget -S
Request sent
server returned: Scan-Command scheduled successfully
When performing interval scans (option NZBDirInterval) server checks that the file was not modified for few seconds (option NzbDirFleAge) before processing it. In contrast to interval scans by a forced scan all nzb-files in incoming nzb-directory will be added to download queue without that check.
Command –edit
Command --edit
(short form -E
) is used to change the items in download queue, postprocessor queue or in history. That’s the most complex command. The command has several arguments. The first argument define the target (queue or list) affected by the command. If the first argument is omitted the command affects individual files in download queue (default behavior):
- <empty> - individual files in download queue;
- G - groups in download queue;
- O - postprocessor queue;
- H - history.
The second argument defines action, which should be performed. The list of available actions depends on used target (the first argument in the command).
The third and further arguments list the IDs of items, affected by the command. If the command should edit only one item it is simply the ID of the item. If more than one item is used they must be separated with comma. It is also possible to pass ranges of IDs using character “-“. Examples of IDs:
- 1
- 1,3,6
- 1-5,3,10-22
Individual files
Following actions are available for editing of individual files in download queue:
- T - move file to the top of download queue;
- B - move file to the bottom of download queue;
- +<offset> - move file down in download queue to <offset>;
- -<offset> - move file up in download queue to <offset>;
- P - pause file;
- U - unpause (resume) file;
- D - delete file from download queue;
The IDs of files are listed in square braces by the command nzbget -L F
(see command –list).
Example: move two files with IDs #5 and #10 two positions up in queue:
$ nzbget -E -2 5,10
Request sent
server returned: Edit-Command completed successfully
Example: move file with ID #20 five positions down in queue:
$ nzbget -E +5 20
Request sent
server returned: Edit-Command completed successfully
Example: move file with ID #15 to the top of queue:
$ nzbget -E T 15
Request sent
server returned: Edit-Command completed successfully
Example: delete files with IDs from 100 to 199 from queue:
$ nzbget -E D 100-199
Request sent
server returned: Edit-Command completed successfully
Groups
Following actions are available for editing of groups in download queue:
- T - move group to the top of download queue;
- B - move group to the bottom of download queue;
- +<offset> - move group down in download queue to <offset>;
- -<offset> - move group up in download queue to <offset>;
- P - pause group;
- U - unpause (resume) group;
- A - pause all par-files in group;
- R - pause all par-files in group except the main par-file;
- D - delete group from download queue;
- K <name> - define category <name> for group;
- M - merge groups. The list of IDs must contains at least two IDs. The first ID is the target for merging.
- O <name>=<value> - add or change the post-process parameter <name> to <value> for group.
After executing of move-commands (T, B, +<offset>, -<offset>) the individual files belonging to affected group is aligned, if they were not before. That can happen only if the individual files were moved manually in queue.
Command edit for groups requires IDs of files to be passed. For this purpose the ID of any file belonging to the group can be used. The command nzbget -L G
prints the first and the last ID of the group (see Groups in download queue). It’s better to use the last ID to avoid the situation when the ID of the first file in download queue was passed and the file was completely downloaded and removed from download queue before the edit command was received.
Example: pause the group containing files with IDs #200-259:
$ nzbget -E G P 259
Request sent
server returned: Edit-Command completed successfully
Example: assign category “my videos” to the group containing files with IDs #451-958:
$ nzbget -E G K "my videos" 958
Request sent
server returned: Edit-Command completed successfully
Example: merge free groups. The first group, which is also used as target, contains files with IDs #50-121, the second group contains files #122-159 and the third group contains files #160-198:
$ nzbget -E G M 121 159 198
Request sent
server returned: Edit-Command completed successfully
Example: set the post-processing parameter “password” with value “my pass” for two groups: one with files #60-66 and another with files #159-186:
$ nzbget -E G O "password=my pass" 66 186
Request sent
server returned: Edit-Command completed successfully
Post-processor queue
Following actions are available for editing of items in post-processor queue:
- T - move post-job to the top of post-processor queue;
- B - move post-job to the bottom of post-processor queue;
- +<offset> - move post-job down in post-processor queue to <offset>;
- -<offset> - move post-job up in post-processor queue to <offset>;
- D - delete post-job from post-processor queue;
Move-commands accept only one post-job at a time, delete-command can process several post-jobs at once. Move-commands cannot change the order of the top job, which remains active. If delete-command is used on active post-job the job is terminated: for a par-job it means cancelling of par-check/repair, for script-job - terminating of the post-processing script by killing it.
Command edit for post-processor queue requires IDs of post-jobs to be passed. These IDs are printed by list-command nzbget -L O
.
History list
Following actions are available for editing of items in history list:
- P - post-process history item again;
- R - return history item back to download queue. This command is available only if there are remaining files, which were not downloaded (par2-files);
- D - delete item from history;
All commands can process several history items at once.
Command edit for history list requires IDs of history items to be passed. These IDs are printed by list-command nzbget -L H
.
Command –write
Command --write
(short form -W
) adds a message to the server log. The second parameter determines the type of message:
- D - Detail;
- I - Info;
- W - Warning;
- E - Error;
- D - Debug (only if the server was compiled in debug-mode); The third parameter is the text of message.
For example:
$ nzbget -W I "Hello World!"
Request sent
server returned: Message added to log
This command can be used from shell scripts when it is desired to submit any information to nzbget’s user. Depending on options DetailTarget, InfoTarget, etc. the messages may be filtered and not appear in the log.
Introduction
Installation manuals
- Installation on Windows
- Installation on Windows via WinGet
- Installation on macOS
- Installation on macOS via Homebrew
- Installation on Linux
- Installation on Docker
- Installation on Docker - LinuxServer.io version
- Installation on Android
- Installation on Synology
- Installation on QNAP
- Installation on other NAS devices
Building manuals
Configuration
- Backup And Restore Settings
- Performance Tips
- Choosing Cipher
- Behind Other Web Server
- TLS certificate verification
Usage
- Quick Filter
- Keyboard Shortcuts
- RSS and duplicate check
- VideoSort
- Console Mode
- Command Line Reference
- Performing Speed Tests
Development
Extensions
- Extension Scripts
- Post-processing scripts
- Scan Scripts
- Queue Scripts
- Scheduler Scripts
- Feed Scripts
- API reference