dir と copy を一緒に使用してディレクトリを検索し、フォルダーにコピーするにはどうすればよいですか?

dir と copy を一緒に使用してディレクトリを検索し、フォルダーにコピーするにはどうすればよいですか?

指定されたフォルダーとそのサブディレクトリでファイルを検索し、それらを別の場所の指定されたフォルダーにコピーする必要があります。dircopyをパイプで使用することは可能ですか?

dir /s foo???.txt | copy g:\someplace

上記は機能しません。パイプの左側は目的のものを見つけますが、見つかったファイルをコピーできません。Windows 7 コマンド プロンプトを使用しています。

答え1

次のように使用できますxcopy:

xcopy /s foo???.txt g:\someplace

これによってディレクトリ構造が保持されます。

ディレクトリ構造が必要ない場合は、次の操作を実行できます。

for /r %i in (foo???.txt) do xcopy /Y "%i" g:\someplace

これをバッチファイルで使用する場合は、%次のように 2 倍にする必要があります。

for /r %%i in (foo???.txt) do xcopy /Y "%%i" g:\someplace

答え2

Powershell を使用すると、これを実行できます:

cmd.exe /c dir *.txt /s /b | copy -Destination d:\md

cmd.exeの部分とPowershellの部分は少し分かりやすくなりましたが、重複しています

関連情報