その場所のファイル名に1、2、3、4、または5を含むファイルをplayer00_0[1..5]*.*
意味するパターンに一致するファイルのみをコピーしようとしています。[1..5]
ソースディレクトリには40Kファイルがあるため、bashを使用してglobs
操作を実行することはできません。
私の試みは次のとおりです。
indir=playout40kem
outdir=visible5k
rsync -am --include='player00_01*.*' --include='player00_02*.*'
--include='player00_03*.*' --include='player00_04*.*'
--include='player00_05*.*' $indir/ $outdir
しかし結果はみんなファイルがコピーされます。このフィルタリングを実行する正しい方法は何ですか?
答え1
~から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