{
"name": "rclone",
"description": "The Swiss army knife of cloud storage",
"subcommands": [
{
"name": "about",
"description": "Get quota information from the remote",
"options": [
{
"names": [
"--full"
],
"description": "Full numbers instead of SI units"
},
{
"names": [
"--json"
],
"description": "Format output as JSON"
}
],
"args": [
{
"name": "remote:"
}
]
},
{
"name": "authorize",
"description": "Remote authorization",
"options": [
{
"names": [
"--auth-no-open-browser"
],
"description": "Do not automatically open auth link in default browser"
}
]
},
{
"name": "backend",
"description": "Run a backend specific command",
"options": [
{
"names": [
"--json"
],
"description": "Format output as JSON"
}
]
},
{
"name": "cat",
"description": "Concatenates any files and sends them to stdout",
"options": [
{
"names": [
"--discard"
],
"description": "Discard the output instead of printing"
},
{
"names": [
"--count"
],
"description": "Only print N characters. (default -1)",
"takes_arg": true,
"arg": {
"name": "int"
}
},
{
"names": [
"--head"
],
"description": "Only print the first N characters",
"takes_arg": true,
"arg": {
"name": "int"
}
},
{
"names": [
"--offset"
],
"description": "Start printing at offset N (or from end if -ve)",
"takes_arg": true,
"arg": {
"name": "int"
}
},
{
"names": [
"--tail"
],
"description": "Only print the last N characters",
"takes_arg": true,
"arg": {
"name": "int"
}
}
],
"args": [
{
"name": "remote:path"
}
]
},
{
"name": "check",
"description": "Checks the files in the source and destination match",
"options": [
{
"names": [
"--download"
],
"description": "Check by downloading rather than with hash"
},
{
"names": [
"--combined"
],
"description": "Make a combined report of changes to this file",
"takes_arg": true,
"arg": {
"template": "filepaths"
}
},
{
"names": [
"--differ"
],
"description": "Report all non-matching files to this file",
"takes_arg": true,
"arg": {
"template": "filepaths"
}
},
{
"names": [
"--error"
],
"description": "Report all files with errors (hashing or reading) to this file",
"takes_arg": true,
"arg": {
"template": "filepaths"
}
},
{
"names": [
"--match"
],
"description": "Report all matching files to this file",
"takes_arg": true,
"arg": {
"template": "filepaths"
}
},
{
"names": [
"--missing-on-dst"
],
"description": "Report all files missing from the destination to this file",
"takes_arg": true,
"arg": {
"template": "filepaths"
}
},
{
"names": [
"--missing-on-src"
],
"description": "Report all files missing from the source to this file",
"takes_arg": true,
"arg": {
"template": "filepaths"
}
},
{
"names": [
"--one-way"
],
"description": "Check one way only, source files must exist on remote"
}
],
"args": [
{
"name": "source:path"
},
{
"name": "remote:path"
}
]
},
{
"name": "cleanup",
"description": "Clean up the remote if possible",
"args": [
{
"name": "remote:path"
}
]
},
{
"name": "config",
"description": "Enter an interactive configuration session",
"subcommands": [
{
"name": "create",
"description": "Create a new remote with name, type and options",
"args": [
{
"name": "name"
},
{
"name": "type"
}
]
}
]
},
{
"name": "copy",
"description": "Copy files from source to dest, skipping already copied",
"args": [
{
"name": "source:path"
},
{
"name": "dest:path"
}
]
},
{
"name": "copyto",
"description": "Copy files from source to dest, skipping already copied",
"args": [
{
"name": "source:path"
},
{
"name": "dest:path"
}
]
},
{
"name": "copyurl",
"description": "Copy url content to dest",
"args": [
{
"name": "url"
},
{
"name": "dest:path"
}
]
},
{
"name": "cryptcheck",
"description": "Cryptcheck checks the integrity of a crypted remote",
"options": [
{
"names": [
"--combined"
],
"description": "Make a combined report of changes to this file",
"takes_arg": true,
"arg": {
"template": "filepaths"
}
},
{
"names": [
"--differ"
],
"description": "Report all non-matching files to this file",
"takes_arg": true,
"arg": {
"template": "filepaths"
}
},
{
"names": [
"--error"
],
"description": "Report all files with errors (hashing or reading) to this file",
"takes_arg": true,
"arg": {
"template": "filepaths"
}
},
{
"names": [
"--match"
],
"description": "Report all matching files to this file",
"takes_arg": true,
"arg": {
"template": "filepaths"
}
},
{
"names": [
"--missing-on-dst"
],
"description": "Report all files missing from the destination to this file",
"takes_arg": true,
"arg": {
"template": "filepaths"
}
},
{
"names": [
"--missing-on-src"
],
"description": "Report all files missing from the source to this file",
"takes_arg": true,
"arg": {
"template": "filepaths"
}
},
{
"names": [
"--one-way"
],
"description": "Check one way only, source files must exist on remote"
}
],
"args": [
{
"name": "remote:path"
},
{
"name": "cryptedremote"
}
]
},
{
"name": "cryptdecode",
"description": "Cryptdecode returns unencrypted file names",
"options": [
{
"names": [
"--reverse"
],
"description": "Reverse cryptdecode, encrypts filenames"
}
],
"args": [
{
"name": "cryptedremote"
},
{
"name": "encryptedfilename",
"is_variadic": true
}
]
},
{
"name": "dedupe",
"description": "Interactively find duplicate filenames and delete/rename them",
"options": [
{
"names": [
"--by-hash"
],
"description": "Find identical hashes rather than names"
},
{
"names": [
"--dedupe-mode"
],
"description": "Dedupe mode",
"takes_arg": true,
"arg": {
"name": "mode",
"suggestions": [
"interactive",
"skip",
"rename",
"list",
"first",
"newest",
"oldest",
"largest",
"smallest"
]
}
}
],
"args": [
{
"name": "remote:path"
}
]
},
{
"name": "delete",
"description": "Remove the files in path",
"options": [
{
"names": [
"--rmdirs"
],
"description": "Rmdirs removes empty directories but leaves root intact"
}
],
"args": [
{
"name": "remote:path"
}
]
},
{
"name": "deletefile",
"description": "Remove a single file from remote",
"args": [
{
"name": "remote:path"
}
]
},
{
"name": "genautocomplete",
"description": "Output completion script for a given shell",
"subcommands": [
{
"name": "bash",
"description": "Output bash completion script for rclone.",
"args": [
{
"name": "output_file",
"description": "If output_file is \"-\", then the output will be written to stdout"
}
]
},
{
"name": "fish",
"description": "Output fish completion script for rclone.",
"args": [
{
"name": "output_file",
"description": "If output_file is \"-\", then the output will be written to stdout"
}
]
},
{
"name": "zsh",
"description": "Output zsh completion script for rclone.",
"args": [
{
"name": "output_file",
"description": "If output_file is \"-\", then the output will be written to stdout"
}
]
}
]
},
{
"name": "gendocs",
"description": "Output markdown docs for rclone to the directory supplied",
"args": [
{
"name": "output_directory",
"template": "folders"
}
]
},
{
"name": "hashsum",
"description": "Produces a hashsum file for all the objects in the path",
"options": [
{
"names": [
"--base64"
],
"description": "Output base64 encoded hashsum"
},
{
"names": [
"--download"
],
"description": "Download the file and hash it locally; if this flag is not specified, the hash is requested from the remote"
},
{
"names": [
"--output-file"
],
"description": "Output hashsums to a file rather than the terminal",
"takes_arg": true,
"arg": {
"template": "filepaths"
}
}
],
"args": [
{
"name": "hash",
"suggestions": [
"MD5",
"SHA-1",
"DropboxHash",
"QuickXorHash",
"Whirlpool",
"CRC-32",
"MailruHash"
]
},
{
"name": "remote:path"
}
]
},
{
"name": "help",
"description": "Show help for rclone commands, flags and backends",
"subcommands": [
{
"name": "flags",
"description": "List of global flags"
}
]
},
{
"name": "link",
"description": "Generate public link to file/folder",
"options": [
{
"names": [
"--expire"
],
"description": "The amount of time that the link will be valid (default 100y)",
"takes_arg": true,
"arg": {
"name": "duration"
}
},
{
"names": [
"--unlink"
],
"description": "Remove existing public link to file/folder"
}
],
"args": [
{
"name": "remote:path"
}
]
},
{
"name": "listremotes",
"description": "List all the remotes in the config file",
"options": [
{
"names": [
"--long"
],
"description": "Show the type as well as names"
}
]
},
{
"name": "ls",
"description": "List the objects in the path with size and path",
"args": [
{
"name": "remote:path"
}
]
},
{
"name": "lsd",
"description": "List all directories/containers/buckets in the path",
"options": [
{
"names": [
"-R",
"--recursive"
]
}
],
"args": [
{
"name": "remote:path"
}
]
},
{
"name": "lsf",
"description": "List directories and objects in remote:path formatted for parsing",
"options": [
{
"names": [
"--dirs-only"
],
"description": "Only list directories"
},
{
"names": [
"--files-only"
],
"description": "Only list files"
},
{
"names": [
"--recursive",
"-R"
],
"description": "Recurse into the listing"
},
{
"names": [
"--absolute"
],
"description": "Put a leading / in front of path names"
},
{
"names": [
"--csv"
],
"description": "Output in CSV format"
},
{
"names": [
"-d",
"--dir-slash"
],
"description": "Append a slash to directory names. (default true)"
},
{
"names": [
"--format",
"-F"
],
"description": "Output format - see help for details (default \"p\")",
"takes_arg": true,
"arg": {
"name": "format",
"suggestions": [
"p",
"s",
"t",
"h",
"i",
"o",
"m"
]
}
},
{
"names": [
"--hash"
],
"description": "Use this hash when h is used in the format (default \"MD5\")",
"takes_arg": true,
"arg": {
"name": "hash",
"suggestions": [
"MD5",
"SHA-1",
"DropboxHash",
"QuickXorHash",
"Whirlpool",
"CRC-32",
"MailruHash"
]
}
},
{
"names": [
"--separator",
"-s"
],
"description": "Separator for the items in the format. (default \";\")",
"takes_arg": true,
"arg": {
"name": "separator"
}
}
],
"args": [
{
"name": "remote:path"
}
]
},
{
"name": "lsjson",
"description": "List directories and objects in the path in JSON format",
"options": [
{
"names": [
"--dirs-only"
],
"description": "Only list directories"
},
{
"names": [
"--files-only"
],
"description": "Only list files"
},
{
"names": [
"--recursive",
"-R"
],
"description": "Recurse into the listing"
},
{
"names": [
"--encrypted",
"-M"
],
"description": "Show the encrypted names"
},
{
"names": [
"--hash"
],
"description": "Include hashes in the output (may take longer)"
},
{
"names": [
"--hash-type"
],
"description": "Show only this hash type (may be repeated)",
"takes_arg": true,
"arg": {
"name": "hashes",
"suggestions": [
"MD5",
"SHA-1",
"DropboxHash",
"QuickXorHash",
"Whirlpool",
"CRC-32",
"MailruHash"
]
}
},
{
"names": [
"--no-mimetype"
],
"description": "Don't read the mime type (can speed things up)"
},
{
"names": [
"--no-modtime"
],
"description": "Don't read the modification time (can speed things up)"
},
{
"names": [
"--original"
],
"description": "Show the ID of the underlying Object"
}
],
"args": [
{
"name": "remote:path"
}
]
},
{
"name": "lsl",
"description": "List the objects in path with modification time, size and path",
"args": [
{
"name": "remote:path"
}
]
},
{
"name": "md5sum",
"description": "Produces an md5sum file for all the objects in the path",
"options": [
{
"names": [
"--base64"
],
"description": "Output base64 encoded hashsum"
},
{
"names": [
"--download"
],
"description": "Download the file and hash it locally; if this flag is not specified, the hash is requested from the remote"
},
{
"names": [
"--output-file"
],
"description": "Output hashsums to a file rather than the terminal",
"takes_arg": true,
"arg": {
"name": "file",
"template": "filepaths"
}
}
],
"args": [
{
"name": "remote:path"
}
]
},
{
"name": "mkdir",
"description": "Make the path if it doesn't already exist",
"args": [
{
"name": "remote:path"
}
]
},
{
"name": "mount",
"description": "Mount the remote as file system on a mountpoint",
"args": [
{
"name": "remote:path"
},
{
"name": "mountpoint",
"template": "folders"
}
]
},
{
"name": "move",
"description": "Move files from source to dest"
},
{
"name": "moveto",
"description": "Move file or directory from source to dest"
},
{
"name": "ncdu",
"description": "Explore a remote with a text based user interface"
},
{
"name": "obscure",
"description": "Obscure password for use in the rclone config file"
},
{
"name": "purge",
"description": "Remove the path and all of its contents"
},
{
"name": "rc",
"description": "Run a command against a running rclone"
},
{
"name": "rcat",
"description": "Copies standard input to file on remote"
},
{
"name": "rcd",
"description": "Run rclone listening to remote control commands only"
},
{
"name": "rmdir",
"description": "Remove the empty directory at path"
},
{
"name": "rmdirs",
"description": "Remove empty directories under the path"
},
{
"name": "selfupdate",
"description": "Update the rclone binary"
},
{
"name": "serve",
"description": "Serve a remote over a protocol"
},
{
"name": "settier",
"description": "Changes storage class/tier of objects in remote"
},
{
"name": "sha1sum",
"description": "Produces an sha1sum file for all the objects in the path"
},
{
"name": "size",
"description": "Prints the total size and number of objects in remote:path"
},
{
"name": "sync",
"description": "Make source and dest identical, modifying destination only",
"args": [
{
"name": "source:path"
},
{
"name": "dest:path"
}
]
},
{
"name": "test",
"description": "Run a test command"
},
{
"name": "touch",
"description": "Create new file or change file modification time"
},
{
"name": "tree",
"description": "List the contents of the remote in a tree like fashion"
},
{
"name": "version",
"description": "Show the version number"
}
],
"options": [
{
"names": [
"--version"
],
"description": "View your current rclone version"
},
{
"names": [
"--help",
"-h"
],
"description": "Show help for rclone commands, flags and backends"
}
]
}