Your company here — click to reach over 10,000 unique daily visitors

megatools-put - Man Page

upload files to your Mega.nz account


megatools put [--no-progress] [--path <remotepath>] <paths>...


Uploads files to your Mega.nz account.

NOTE: If you want to upload entire directories, use megatools-copy(1).


--path <remotepath>

Remote path to upload to. If this path is a directory, files are placed into the directory. If this path doesn’t exist, and it’s parent directory does, the file will be uploaded to a specified path (this only works if you specify exactly one file).


Disable upload progress reporting.


Generate and upload file previews, when uploading new files. This is the default, unless you changed it in the configuration file. Use this to override the option from the configuration file.


Don’t generate and upload file previews. Default is to generate previews.

-u <email> , --username <email>

Account username (email)

-p <password> , --password <password>

Account password


Never ask interactively for a password


Reload filesystem cache

--limit-speed <speed>

Set maximum allowed upload and download speed in KiB/s. This option overrides config file settings. 0 means no limit. When using ParallelTransfers > 1, upload speed limit is applied to each transfer individually.

--proxy <proxy>

Use proxy server to connect to mega.nz. This option overrides config file settings. More information can be found in libcurl documentation at ⟨https://curl.haxx.se/libcurl/c/CURLOPT_PROXY.html⟩. Some acceptable values are:

  • none : Disable proxy if it was enabled in the config file.
  • socks5://localhost:9050 : Local SOCKSv5 proxy server
  • socks5h://localhost:9050 : Local SOCKSv5 proxy server with DNS handled by the proxy
--netif <ifname|ip>

Network interface or local IP address used for outgoing connections. You have to specify IP address bound to some of your local network interfaces, when specifying an IP address.

--ip-proto <proto>

Which IP protocol to prefer when connecting to mega.nz (v4, v6, or any). This is just an advisory option. Megatools will resolve mega.nz domain, and then use an A or AAAA record based on the stated preference.

--config <path>

Load configuration from a file


Disable loading .megarc

--debug [<options>]

Enable debugging of various aspects of the megatools operation. You may enable multiple debugging options separated by commas. (eg. --debug api,fs)

Available options are:

  • http: Dump HTTP request/response details (can be used to debug connection/proxy issues)
  • api: Dump Mega.nz API calls
  • fs: Dump Mega.nz filesystem (may require --reload to actually print something)
  • cache: Dump cache contents
  • tman: Dump transfer manager events

Show version information


One or more local files to upload.


Remote Filesystem

Mega.nz filesystem is represented as a tree of nodes of various types. Nodes are identified by a 8 character node handles (eg. 7Fdi3ZjC). Structure of the filesystem is not encrypted.

Megatools maps node tree structure to a traditional filesystem paths (eg. /Root/SomeFile.DAT).

NOTE: By the nature of Mega.nz storage, several files in the directory can have the same name. To allow access to such files, the names of conflicting files are extended by appending dot and their node handle like this:


You need to be aware of several special folders:


Writable directory representing the root of the filesystem.


Trash directory where Mega.nz web client moves deleted files. This directory is not used by megatools when removing files.


Not sure.


Directory containing subdirectories representing your contacts list. If you want to add contacts to the list, simply create subdirectory named after the contact you want to add.


Directories representing individual contacts in your contacts list. These directories contain folders that others shared with you. All shared files are read-only, at the moment.

See Also

megatools(1), megarc(5), megatools-df(1), megatools-dl(1), megatools-get(1), megatools-ls(1), megatools-mkdir(1), megatools-put(1), megatools-reg(1), megatools-rm(1), megatools-copy(1).


Part of the megatools(1) suite of commands.


Report bugs to megatools@megous.com . Your message will end up in a public archive, so be careful what you say or send.


Megatools was written by Ondrej Jirman < megatools@megous.com >, 2013-2022.

Official website is ⟨http://megatools.megous.com⟩.

Referenced By

megarc(5), megatools(1), megatools-copy(1), megatools-df(1), megatools-dl(1), megatools-export(1), megatools-get(1), megatools-ls(1), megatools-mkdir(1), megatools-reg(1), megatools-rm(1), megatools-test(1).

25 January 2024