---
name: "amulecmd"
section: "1"
platform: "linux"
package: "amule"
version: "1:3.2.0-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/amulecmd"
---

# amulecmd(1)

Console-based program to control aMule

## NAME

amulecmd - Console-based program to control aMule

## SYNOPSIS

\[**-h** ***\<host\>***\] \[**-p** ***\<port\>***\] \[**-P** ***\<password\>***\] \[**-f** ***\<path\>***\] \[**-l** ***\<lang\>***\] { \[**-w**\] \| \[**-c** ***\<command\>***\] }

\[**--create-config-from**=***\<path\>***\]

## DESCRIPTION

**amulecmd** is a console-based client to control aMule.

- **\[ -h** *\<host\>*, **--host**=*\<host\>* **\]**

  Host where aMule is running (default: *127.0.0.1*). *\<host\>* might be an IP address or a DNS name

- **\[ -p** *\<port\>*, **--port**=*\<port\>* **\]**

  aMule's port for External Connections, as set in Preferences-\>Remote Controls (default: *4712*)

- **\[ -P** *\<password\>*, **--password**=*\<password\>* **\]**

  External Connections password.

- **\[ -f** *\<path\>*, **--config-file**=*\<path\>* **\]**

  Use the given configuration file. Default configuration file is *~/.aMule/remote.conf*

- Do not print any output to stdout.

  - Be verbose -

  show also debug messages.

- **\[ -l** *\<lang\>*, **--locale**=*\<lang\>* **\]**

  Sets program locale (language). See the **NOTES** section for the description of the *\<lang\>* parameter.

- Write command line options to config file and exit

  - **\[ -c** *\<command\>*, **--command**=*\<command\>* **\]**

  Execute *\<command\>* as if it was entered at amulecmd's prompt and exit.

- **\[ --create-config-from**=*\<path\>* **\]**

  Create config file based upon *\<path\>*, which must point to a valid aMule config file, and then exit.

- Do not encrypt the External Connection link.

  Encryption is negotiated automatically whenever the remote aMule supports it, and is on by default for every destination, local or remote. Turning it off leaves everything after the login readable, and modifiable, by anyone able to observe the connection.

- Force ZLIB compression on the External Connection link regardless of the dialed-IP locality.

  Useful when the server side is reachable over a VPN tunnel that resolves to a LAN IP and the heuristic would otherwise skip compression.

- Separate the fields of the list commands with spaces, as earlier versions did, instead of tabs.

  Client names and file names may contain spaces, so the default tab separator is what lets a script split a row back into its fields; use this only for scripts written against the older output.

- Displays the current version number.

  - Prints a short usage description.

  ## COMMANDS

All commands are case insensitive. Adds an eD2k-link or a magnet-link to the core.

The eD2k link to be added can be:

- •

  a file link (ed2k://\|file\|...), it will be added to the download queue;

- •

  a server link (ed2k://\|server\|...), it will be added to the server list;

- •

  a serverlist link, in which case all servers in the list will be added to the server list.

The magnet link must contain the eD2k hash and file length. Cancels the download specified by *\<hash\>* or *\<number\>*. To get the value use **show**. Connect to the network.

This will connect to all networks that are enabled in Preferences.

With the optional parameter you can specify which network to connect to. Giving a server address in the form of IP:Port (where IP is either a dotted decimal IPv4 address or a resolvable DNS name) aMule will connect to that server only. Disconnect from all networks you are connected to, or just disconnect from the specified network. Start downloading a file.

Give the *\<number\>* of a file as listed by **results**, optionally followed by a search *\<id\>* (as printed by **search**). Without an id, the number refers to the last **results** output, or to the most recently started search if nothing was listed yet. Example: 'download 12' downloads file 12 of the last results; 'download 12 3' downloads file 12 of search 3. Disconnect from amule/amuled and quit amulecmd. Get and display a preference value.

Available values for *\<what\>*:

- BwLimits

  Get bandwidth limits.

- IPFilter

  Get IPFilter preferences.

Prints a short usage description. If called without parameter, it shows a list of available commands. If called with *\<command\>*, it shows a short description of the given command. Pauses the download specified by *\<hash\>* or *\<number\>*. To get the value use **show**. Set priority of a download specified by *\<hash\>* or *\<number\>*.

Available values for *\<priority\>*:

- Auto

  Automatic priority.

- High

  High priority.

- Low

  Low priority.

- Normal

  Normal priority.

Shows the progress of an on-going search. Optionally takes a search *\<id\>* (as printed by **search**); with no id, shows the most recently started search. A synonym of the **exit** command. Reloads a given object.

Available values for *\<what\>*:

- Shared

  Reload shared files list.

- IPFilter

  Reload IP filter tables.

Reset the log. Shows you the results of a search. Optionally takes a search *\<id\>* (as printed by **search**); with no id, shows the most recently started search. Several searches can be kept on the daemon at once and addressed by id. Resumes the download specified by *\<hash\>* or *\<number\>*. To get the value use **show**. Makes a search for the given *\<keyword\>*. A search type and a keyword to search is mandatory to do this. Example: 'search kad amule' performs a kad search for 'amule'. Prints a search id; pass it to **results** or **progress** to address this search. Several searches can run at once, each with its own id.

Available search types:

- All

  Searches eD2k and Kad together, using the available network if the other cannot start. Requires a daemon advertising All search support; older daemons return a clear error without starting a search. Example: 'search all amule'.

- Global

  Performs a global search.

- Kad

  Performs a search on the Kademlia network.

- Local

  Performs a local search.

Optional filters can be placed before, after, or interleaved with the search keyword(s):

- **--type** *\<Audio\|Video\|Image\|Doc\|Pro\|Arc\|Iso\>*

  Restrict results to the given file type.

- **--extension** *\<ext\>* (alias: **--ext**)

  Restrict results to a specific file extension (e.g. *iso*, *mp3*).

- **--avail** *\<N\>* (alias: **--availability**)

  Minimum number of sources a result must report.

- **--min-size** *\<N\[KMG\]\>*

  Smallest file size to return. Suffixes use binary multipliers (K = 1024, M = K×1024, G = M×1024); no suffix means bytes.

- **--max-size** *\<N\[KMG\]\>*

  Largest file size to return. Same suffixes as **--min-size**.

Example: 'search global linux iso --type Iso --min-size 100M' returns results for 'linux iso' of file-type Iso at least 100 MiB. Sets a given preferences value.

Available values for *\<what\>*:

- BwLimits

  Set bandwidth limits.

- IPFilter

  Set IPFilter preferences.

Shows upload/download queue, servers list or shared files list.

Available values for *\<what\>*:

- DL

  Show download queue.

- Log

  Show log.

- Servers

  Show servers list.

- Shared

  Show shared files list.

- UL

  Show upload queue.

Shutdown the remote running core (amule/amuled). This will also shut down the text client, since it is unusable without a running core. Show statistics tree.

The optional *\<number\>* in the range of 0-255 can be passed as argument to this command, which tells how many entries of the client version subtree should be shown. Passing 0, or omitting it means 'unlimited'.

Example: 'statistics 5' will show only the top 5 versions for each client type. Show connection status, current up/download speeds, etc.

## NOTES

### Paths

For all options which take a *\<path\>* value, if the *path* contains no directory part (i.e. just a plain filename), then it is considered to be under the aMule configuration directory, *~/.aMule*.

### Languages

The *\<lang\>* parameter for the **-l** option has the following form: *lang*\[**\_***LANG*\]\[**.***encoding*\]\[**@***modifier*\] where *lang* is the primary language, *LANG* is a sublanguage/territory, *encoding* is the character set to use and *modifier* allows the user to select a specific instance of localization data within a single category.

For example, the following strings are valid:

Though all the above strings are accepted as valid language definitions, *encoding* and *modifier* are yet unused.

In addition to the format above, you can also specify full language names in English - so **-l german** is also valid and is equal to **-l de\_DE**.

When no locale is defined, either on command-line or in config file, system default language will be used.

## FILES

\~/.aMule/remote.conf

## EXAMPLE

Typically amulecmd will be first run as:

**amulecmd** **-h** *hostname* **-p** *ECport* **-P** *ECpassword* **-w**

or

**amulecmd** **--create-config-from**=*/home/username/.aMule/amule.conf*

These will save settings to *$HOME/.aMule/remote.conf*, and later you only need to type:

Of course, you don't have to follow this example.

## REPORTING BUGS

Please report bugs either on our forum (*https://github.com/amule-org/amule/discussions*), or in our bugtracker (*https://github.com/amule-org/amule/issues*). Please do not report bugs in e-mail, neither to our mailing list nor directly to any team member.

## COPYRIGHT

aMule and all of its related utilities are distributed under the GNU General Public License.

## SEE ALSO

## AUTHOR

This manpage was written by Vollstrecker \<amule@vollstreckernet.de\>
