• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:xcopyで特定のファイルのみをコピーする方法)

xcopyで特定のファイルのみをコピーする方法

このQ&Aのポイント
  • xcopyもしくはcopyコマンドを使用し、ディレクトリ内の特定のファイル(複数)をコピーする方法についてご教示ください。
  • 特定のファイルの数が多すぎて一行ずつコマンドを書くのは手間が掛かるため、効率的にコピーする方法が知りたいです。
  • excludeオプションでは特定のファイルを除外することができますが、反対の意味で特定のファイルのみをコピーする方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
noname#159916
noname#159916
回答No.3

よくこんな感じでやってました。 バッチ用コマンドですがバッチファイルを作らずコマンドラインで実行させます。 ( コピー先フォルダを C:\distdir\ とします。) コマンドラインでこれ for %a in ( bbb.txt ddd.txt eee.txt ) do xcopy c:\test\%a c:\distdir を実行させると、 カッコ ( ) の中からファイル名を1個拾っては %a に代入し do 以下を実行します、 つまり以下の3コマンドに展開し1個ずつ実行します。 xcopy c:\test\bbb.txt c:\distdir xcopy c:\test\ddd.txt c:\distdir xcopy c:\test\eee.txt c:\distdir 尚、この場合は拡張子がいずれも txt なので、以下のように書くと文字数を若干減らせます。 1コマンドラインの文字数は限りがあるので、ファイル数が多くて他の部分を縮めたい時に有用です。 for %a in ( bbb ddd eee ) do xcopy c:\test\%a.txt c:\distdir ところで、文法を正確に記憶してなくて恐縮ですが、 Windows 配下のコマンドプロンプトが備えるコマンドでは、 予め対象のファイル名リストをテキストファイルで作っておき、 そこからファイル名を1個ずつ拾ってコマンド実行させる事が可能です。

minute-pink
質問者

お礼

丁寧なご説明ありがとうございました。 教えて頂いたfor文で、カッコ()にコピー対象のファイル名リストを指定し バッチファイルにて実行しコピー致しました。

その他の回答 (2)

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.2

「コピーするファイルの名前」を書いたファイルがあれば for でまわすも可.

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

私だったらバッチファイルを2つ書きます。Batch1を実行。 呼ぶバッチ(Batch1.bat)  call Batch2.bat aaa  call Batch2.bat bbb  call Batch2.bat ccc echo end of batch1 呼ばれるバッチ(Batch2.bat) XCOPY 送り側フォルダ\%1.txt 受け側フォルダ [適宜オプション] echo end of batch2

関連するQ&A

専門家に質問してみよう