dirとcopyを一緒に使用してディレクトリを検索し、フォルダーにコピーする方法は?


10

指定したフォルダとそのサブディレクトリでファイルを検索してから、指定したフォルダにコピーする必要があります。パイプdircopy併用できますか?

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

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


好奇心から、どの種類のファイルが必要ですか?ワイルドカードでは不十分でしょうか?
Dave

コマンドでワイルドカード(???-"?"は1桁のワイルドカード)を使用する必要があります。これにより、上記でfoo_42、foo_01などがキャプチャされ、さまざまなサブフォルダーに格納されます。
Flotsam N. Jetsam 2013年

回答:


10

あなたは単に使うことができます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

実は、それを少し週にする必要があります。ディレクトリ構造を維持せずに実行できますか?
Flotsam N. Jetsam 2013年

ハハ、それが私が恐れていたものです:) しかし、ファイル名が重複している場合はどうしますか?xcopy自体では実行できませんが、何かをrobocopyにパイプすることで実行できます(または、おそらくコピーだけでなくバッチファイルで)。どのバージョンのWindowsをお持ちですか?
Rik

Windows7。私のアプリケーションの重複はありません。
Flotsam N. Jetsam 2013年

1つのディレクトリにコピーする方法を追加しました。幸い、ロボコピーは必要ありません。だけを使用してくださいfor /r
Rik

1
あなたはロックします。また賛成できるといいのですが。ありがとう!
Flotsam N. Jetsam 2013年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.