我正在尝试将文件复制到目标,忽略目录结构。以下是我的文件存储方式:
/data/csv/1/history_1971-02-09.csv
/data/csv/1/history_1971-02-10.csv
/data/csv/2/history_1971-02-09.csv
/data/csv/2/history_1971-02-10.csv
...
我想将所有.csv文件传输到同一个远程文件夹中。文件夹“csv”和所有子文件夹最多可包含1,000,000个文件。
我可以使用以下命令将所有csv文件传输并放在同一个远程文件夹中:
rsync -azvv --include-from=/tmp/transfer_list.txt --exclude=* /data/export/csv/*/ /tmp/rsync/
这适用于有限数量的文件。当有500,000多个文件时会出现问题,它会在传输之前检查每个文件以检查排除模式,如下所示:
[sender] hiding file history_1971-02-09_18h40m33s.csv because of pattern *
[sender] hiding file history_-02-09_18h59m26s.csv because of pattern *
[sender] hiding file history_1971-02-09_18h56m23s.csv because of pattern *
....
需要永远完成...
所以我的问题是:有没有办法在不使用“--exclude”选项的情况下做我想做的事情?
我的局限: