rclone/docs/content/commands/rclone_copy.md

89 lines
2.6 KiB
Markdown
Raw Normal View History

---
title: "rclone copy"
2021-11-01 23:42:05 +08:00
description: "Copy files from source to dest, skipping identical files."
slug: rclone_copy
url: /commands/rclone_copy/
# autogenerated - DO NOT EDIT, instead edit the source code in cmd/copy/ and as part of making a release run "make commanddocs"
---
# rclone copy
2021-11-01 23:42:05 +08:00
Copy files from source to dest, skipping identical files.
## Synopsis
2021-11-01 23:42:05 +08:00
Copy the source to the destination. Does not transfer files that are
identical on source and destination, testing by size and modification
2022-07-10 01:08:20 +08:00
time or MD5SUM. Doesn't delete files from the destination. If you
want to also delete files from destination, to make it match source,
use the [sync](/commands/rclone_sync/) command instead.
2021-11-01 23:42:05 +08:00
Note that it is always the contents of the directory that is synced,
2022-07-10 01:08:20 +08:00
not the directory itself. So when source:path is a directory, it's the
2021-11-01 23:42:05 +08:00
contents of source:path that are copied, not the directory name and
contents.
2022-07-10 01:08:20 +08:00
To copy single files, use the [copyto](/commands/rclone_copyto/)
command instead.
2021-11-01 23:42:05 +08:00
If dest:path doesn't exist, it is created and the source:path contents
go there.
For example
rclone copy source:sourcepath dest:destpath
2021-11-01 23:42:05 +08:00
Let's say there are two files in sourcepath
sourcepath/one.txt
sourcepath/two.txt
2021-11-01 23:42:05 +08:00
This copies them to
destpath/one.txt
destpath/two.txt
2021-11-01 23:42:05 +08:00
Not to
destpath/sourcepath/one.txt
destpath/sourcepath/two.txt
If you are familiar with `rsync`, rclone always works as if you had
2021-02-02 21:42:35 +08:00
written a trailing `/` - meaning "copy the contents of this directory".
This applies to all commands and whether you are talking about the
source or destination.
2019-02-09 18:42:57 +08:00
See the [--no-traverse](/docs/#no-traverse) option for controlling
whether rclone lists the destination directory or not. Supplying this
option when copying a small number of files into a large destination
can speed transfers up greatly.
For example, if you have many files in /path/to/src but only a few of
them change every day, you can copy all the files which have changed
recently very efficiently like this:
2019-02-09 18:42:57 +08:00
rclone copy --max-age 24h --no-traverse /path/to/src remote:
2020-09-02 23:59:04 +08:00
**Note**: Use the `-P`/`--progress` flag to view real-time transfer statistics.
**Note**: Use the `--dry-run` or the `--interactive`/`-i` flag to test without copying anything.
2018-11-24 21:44:25 +08:00
```
2017-09-30 21:19:47 +08:00
rclone copy source:path dest:path [flags]
```
## Options
2017-09-30 21:19:47 +08:00
```
2019-04-13 18:01:58 +08:00
--create-empty-src-dirs Create empty source dirs on destination after copy
-h, --help help for copy
```
See the [global flags page](/flags/) for global options not listed here.
## SEE ALSO
2018-10-15 18:03:08 +08:00
* [rclone](/commands/rclone/) - Show help for rclone commands, flags and backends.
2018-03-19 18:06:13 +08:00