我的目录加载了数千个子目录:
/home/tmp/
1
12
123
1234
2345
234
3456
345
34
每个子目录依次有数百个子目录,如果第一级子目录匹配,我想 rsync ......
我需要的是一种仅复制/rsync 以给定数字 [1-9] 开头的目录的方法...
我想我想要的基本上是可以让我使用通配符来匹配的东西
rsync -rzvvhP remotehost:/home/tmp/1* /home/tmp/
我希望 rsync 同步
/home/tmp/1/
/home/tmp/12/
/home/tmp/123/
/home/tmp/1234/
目录和他们拥有的任何子子目录,但不是任何以不同数字开头的第一级目录...
/home/tmp/234/
/home/tmp/2345/
........./3*/
........./4*/ etc..
我试过的:
rsync -rzvvhP --exclude='*' --include-from=1.txt remotehost:/home/tmp/ /home/tmp/
其中 1.txt 包含:
1
12
123
1234
当我使用 2.txt 执行此操作时,尽管 rsync 似乎仍然遍历所有以 1 和 3 等开头的目录...
我刚试过:
rsync -rzvvhP --include-from=2.txt remoteaccount@remotehost:/home/tmp/ /home/tmp/
first I get....
[sender] showing directory 2758 because of pattern 2758
......这看起来不错,但后来我得到......
1014/135954/T33-2.JPG is uptodate
1014/135956/456309.jpg is uptodate
......这很糟糕
根据我尝试的建议:
rsync -rzvvhP --size-only --filter='+ /2*/ - /*' remoteuser@remotehost:/home/tmp/ /home/tmp/
当它运行时,我得到的第一件事是一堆“最新”的文件,这些文件不应该是这个 rsync 的一部分:
1001/149984/T3201-2.JPG is uptodate
我怎样才能做到这一点,以便我可以使用一个命令来仅同步以任何给定数字开头的目录?