Rsync在數万個文件上使用帶有
在數万個文件上使用帶有 --include
過濾器的 rsync
我試圖僅複製與模式匹配的文件,
player00_0[1..5]*.*
其中[1..5]
在文件名中的該位置表示具有 1、2、3、4 或 5 的文件。源目錄中有 40K 文件,所以我們不能使用任何 bashglobs
來完成這項工作。這是我的嘗試:
indir=playout40kem outdir=visible5k rsync -am --include='player00_01*.*' --include='player00_02*.*' --include='player00_03*.*' --include='player00_04*.*' --include='player00_05*.*' $indir/ $outdir
但是結果是所有文件都被複製。進行此過濾的正確方法是什麼?
來自https://unix.stackexchange.com/a/582184/66602缺少的部分是:
--exclude="*"
. 它必須遵循以下include=
條目:rsync -am --include='player00_01*.*' --include='player00_02*.*' --include='player00_03*.*' --include='player00_04*.*' --include='player00_05*.*' --exclude="*" $indir/ $outdir