web-dev-qa-db-ja.com

xcopyディレクトリとサブディレクトリを再帰的に実行し、拡張子でファイル名のみをフィルタリングします

ここに私が今持っているものがあります:

xcopy "c:\projects\SampleProject" "c:\temp\copytest" /E /H /EXCLUDE:elist.txt

それは拡張子によるファイル名のフィルタリングを除いて私が必要とするすべての仕事をします。

例:すべてをコピー*.exeファイルc:\temp\copytestおよびサブディレクトリ。

どうやってするか?

24
DxCK

私もたまたまこれを必要とし、現在のフォルダ構造を維持したまま、特定のタイプのファイルを新しいフォルダにxcopyしたい場合、これを行うだけでよいことがわかりました

xcopy [SourcePath]*.mp3 [DestinationPath]  /sy

/ s:ディレクトリとサブディレクトリが空でない限り、それらをコピーします。/sを省略した場合、xcopyは単一のディレクトリ内で機能します。

/ y:既存の宛先ファイルを上書きするかどうかを確認するプロンプトを抑制します

ドキュメント

39
pollirrata

何かのようなもの:

@echo off
setlocal
set DIR=
set OUTPUTDIR=C:\Documents and Settings\<username>\Desktop\sandbox1\output
for /R %DIR% %%a in (*.mp3) do xcopy "%%a" "%OUTPUTDIR%"

http://technet.Microsoft.com/en-us/library/bb490909.aspx )を参照してください

3
colemik