プロが教えるわが家の防犯対策術!

xcopyコマンドを使用して、コピー元ディレクトリからコピー先ディレクトリにファイルやサブディレクトリをコピーさせようとしています。

コピー先ディレクトリに既に存在しているものはファイルもサブディレクトリもコピー(上書き)してしまってOKです。

問題なのはコピー先ディレクトリ直下に存在しないファイルはコピーしたいのですが、存在しない「ディレクトリ」はコピーさせたくありません。
Uオプションですとファイルもディレクトリも両方とも、コピー先に存在しないとコピーできないので使えません。

どのようにしたらいいのでしょうか。

A 回答 (2件)

/T ファイルはコピーせず,ディレクトリのみを作成する(ディレクトリまたはサブディレクトリが空の場合を除く)


/U 受け側に存在するファイルだけをコピーする


xcopy 送り側 受け側 /T/U

これを
xcopy 送り側 受け側 /U/T
にするとできないので×

この回答への補足

ご回答ありがとうございました。
さっそくやってみました!!

しかし、コピー先に存在しないという条件で、ファイルもディレクトリもコピーできず、Uオプションのみと同じ結果になってしまいました。

補足日時:2011/08/23 17:04
    • good
    • 0

COPYコマンドを使って「ディレクトリ直下にあるファイルだけ」をコピーした後で、XCOPY /Uコマンドで「存在しないディレクトリはコピーしないでコピー」すれば良いのでは?



「1つのコマンドで済まそうとする」から「相反する処理で困る」のです。「相反する処理」と判っているのなら「コマンドを2つに分ける」しかありません。

この回答への補足

素早いご回答ありがとうございます!!

説明不足で申し訳ありません。

バッチでfor文を使ってコピーさせようと考えているのですが、
この場合、copy文を使う場合とxcopy文を使う場合で、どのように条件分岐させればよろしいでしょうか。

補足日時:2011/08/23 16:38
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!