Option Summary

The following configuration options can be used to control and customize the behavior of movedat.  Most options can be specified on either the command line, or in a configuration file.  Command line settings will override configuration file settings.

You can view a list of movedat's current options, including where they originated, by simply running "movedat -d 1".  Look for the section of output labeled "Configuration settings".

Options with the "Boolean" type take no parameter on the command line, but require a value of 0 or 1 in the configuration file.

Maintenance Actions

Each of the following options causes movedat to perform the given maintenance task and then exit.

CLI                 Value
-A user[:passwd]@host:
  Add a set of authentication credentials to encrypted storage.  You must specify a port number using -p if the server is not on port 8080.
-E user@host:
  Expire and remove a set of authentication credentials from storage.  You must specify a port number using -p if the server is not on port 8080.
-F [user[:passwd]@]host:pattern
  The remote path will be parsed as a wildcard pattern and a list of matching files will be returned.  This can be useful for scripting operations, such as shell command completion, or to enumerate a list of files in a script.
-l [user[:passwd]@]host:comment
  The comment string will be entered into the server log as a "*co" action.
-m [user[:passwd]@]host:oldpath newpath
  Request that a remote file be moved or renamed.
-n [user[:passwd]@]host:path
  Request that a new folder be created.
-R [MTP License Code]
  Register an MTP/IP license code then exit.  You may provide the license code on the command line or enter it when prompted.
-v Display version and help information then exit.
-x [user[:passwd]@]host:path ...
  Request that a remote file(s) be deleted.

General Settings

These options set the general run-time behavior of movedat.  When interacting with Object Handlers, note that support for -B, -I, -O, and -r depends upon the implementation of the particular handler.

CLI  Config          Value
-d Debug 0 to 6
  Enable diagnostic output.  Level 1 is recommended any time you are experiencing difficulties.  Levels above 1 will produce copious output and may degrade performance.  Default: 0.
-B BuildPath Boolean
  Create intermediate remote directories as required.  When creating or renaming a remote file, the server will attempt to create missing parent directories in the file's path.  This is always done when transferring folders.  Implementation by Object Handlers, such as CloudDat S3, may vary.  Default: False.
-c NoCheck Boolean
  Do not create download checkpoints or temporary files.  You will not be able to resume a download if it is interrupted.  Default: False.
-C NoPWCache Boolean
  Do not load or save the password cache.  If a password is required, you must provide it on the command line or in response to a prompt.  Default: False.
-D Display Boolean
  Allow remote file contents and raw directory listings to be displayed to the terminal when no destination file is given.  Otherwise, attempts to display file contents to a terminal will be denied and directory listings will be parsed into human readable form.  See Displaying Files.  This option is not necessary when stdout has been redirected to a pipe or file.  Default: False.
-f path name

Read the given configuration file instead of the default paths.  Specifying an empty path string (–f "") will disable all configuration files.

Windows: the path may include environment variables such as %SystemRoot%.
-g NoGlob Boolean
  Disable parsing of remote wildcard characters.  The presence of wildcard characters in the remote path will not trigger a pattern match query.  Instead, the remote path will be sent to the server as a literal string.  This may be useful if you need to work with paths containing wildcard characters.  The remote path string must still be properly quoted to avoid conflicts with the local shell.  Default: False.
-h Boolean
  Recursively transfer an entire directory hierarchy.  The source and destination must both be directories.  The contents of the source will be copied into the destination.  Default: False.
-H ShowHidden Boolean
  By default, files which the operating system would normally hide are not included in folder listings or transfers.  Setting this option will include hidden files in folder listings and folder transfersDefault: False.
-i Boolean
  Transfer an entire directory hierarchy as a real-time data stream.  The source and destination must both be directories.  The contents of the source will be copied into the destination.  Default: False.
-I IgnoreExisting Boolean
  Skip files which already exist at the destination.  No comparison is made: if a file with the same path name exists at the destination, then the transfer will be ignored.  Even if a partial transfer exists, it too will be ignored if a complete file is already in place.  Works with individual uploads and downloads, and one-at-a-time directory transfers.  Does not apply to Streaming Folders.  Implementation by Object Handlers, such as CloudDat S3, may vary.  Default: False.
-K Encrypt Boolean
  Require all content to be encrypted.  If the server does not support content encryption, an error will be returned.  Usernames and passwords are always encrypted, regardless of other settings.  Default: False.
-O StartOver Boolean
  Start over interrupted file transfers instead of resuming them.  Default: False.
-p Port UDP Port
  Specify the UDP port of servers.  Use this option if a server is running on a port other than the default 8080.  Individual servers in a host group can override this using the syntax "sever+port", for example "example.com+7000".  Default: 8080.
-q Quiet Boolean
  Display minimal output and behave as if the terminal is non-interactive.  Output will be sent to stderr instead of stdout.  Operations which need user input may fail unless -y is also enabled.  Default: False.
-r Boolean
  Automatically resume and interrupted file transfer, when possible.  Default: False.
-s ShowLogs Boolean
  Show detailed, machine parseable, logs of movedat's actions.  Default: False.
-S StopTime Minutes
  Limit the total runtime of movedat to this many minutes.  Any transactions in progress at this time will be aborted.  When exiting due to StopTime, movedat will return exit code 32 unless another error has also occurred.  Default: None.
-t TryInterval fail | skip | 0 | seconds
  Set the behavior of the Automatic Retry option.  Default: 60.
-W Windows domain
  Specify a Windows authentication domain.  Default: None.
-y Yes Boolean
  Avoid interactive queries by choosing a default option to questions about overwriting local files or resuming interrupted transfers.  Default: False.


These options set performance parameters and resource utilization.  Server configuration may change the default impose limits on some of these values.  See the Option Negotiation chapter to learn how final values are determined.

CLI  Config          Value
-a Aggression -3 to 5
  Advise MTP/IP as to how aggressive it should be in fully utilizing the network path.  Aggression affects relative performance compared to all other data flows sharing the same network path, similar to prioritization.  It is very rare to need to set aggression higher than 2.  Never set an aggression level of 4 or higher without careful testing.  See the Performance section for details.  Default: 2.
-b StreamSize kilobytes
  Set the buffer size for piping, compression, and Streaming Folders.  If your network is very fast or your latency is very high, then you may need to increase the size.  The buffer should be at least twice the bandwidth-delay-product of your network path.  (Multiply the path bandwidth in bits-per second by the latency in milliseconds, then divide by 4096000.  The result is the number of kilobytes recommended.)  If you increase this value, you should also increase the server's StreamSize setting to match.  Default: 65536.
-e Expire seconds
  Sets how long movedat should wait without hearing from a server before it gives up and aborts a stalled transaction.  Longer values may be useful on highly unreliable networks.  Default: 40.
-k MaxRate kilobytes per second
  Set a limit on how fast each transaction can go in kilobytes per second.  Default: None.
-L MinRTT milliseconds
  Advise MTP/IP of operation on a path with very high latency.  The value should be the minimum observed round trip time of the path, in milliseconds.  This setting will have no effect for RTTs less than 500ms and has little effect for RTTs less than 2000ms.  Default: None.
-M MaxRTT milliseconds
  Request that the path latency for each transaction be limited to the given amount of time.  Use this option if other applications (such as VoIP or video) require that latency along the path be kept below a specific target.  Transfer speed will be reduced any time latency exceeds this value.  This could severely degrade performance if other network traffic is causing high latency.  Consider Aggression level 0 or lower as an alternative.  Default: None.
-N NoiseRatio 4 to 5000

MTP/IP normally regards packet loss as an indication of network congestion.  This option will cause MTP/IP to ignore packet losses up to a rate of one in N, for a given number N.  For example, a value of 100 will cause MTP/IP to ignore a loss rate of up to 1%.  This option should only be used on noisy data paths where loss is occurring due to external factors such as uncorrected bit errors.  Improper use of this option may severely disrupt the network and result in a loss of performance or connectivity, especially when Aggression is elevated.  Default: None.

Site address[/bits] Aggression MaxRate Expire MaxRTT MinRTT Encrypt
  Configure performance for an particular server.  Address must be a DNS name, IP address, or subnet.  For subnets, use an address followed by a slash and the number of mask bits.  The remaining fields are white space separated and correspond to the named configuration variables.  A value of 0 implies that the default should be used.  You may have multiple Site declarations.  Default: None.
-T MaxDatagram bytes
  Limit the size of network datagram payloads to no more than this amount.  The full IP datagram size will be 56 bytes larger when MTP/UDP/IP headers are included.  Tunneling, VPNs, IPsec, MPLS and other encapsulations will add more.  If your network is known to have an MTU less than 1500 bytes or problems with IP fragmentation, try setting a value of 1408, 1280, 1024, or 512Default: None.
-U MinDatagram bytes
  Use network datagram payloads of at least this size.  If your network path is very fast (gigabit or more) and every device along that path supports Jumbo frames (MTU 9000), you may be able to improve performance by setting this to 8192.  Even larger values, up to 61440 may be used on networks configured to support such MTUs (e.g. InfiniBand).  Settings above 1408 without Jumbo frames fully supported may cause severe performance problems or loss of connectivity.  Note that setting MinDatagram will increase the minimum throttling limit discussed in the Performance chapter.  Default: None.
-z Compress Boolean
  Enables inline zlib compression.  Does not apply to Streaming Folders or Object HandlersDefault: False.