-PR-
解決済み

バッチファイル XCOPYで上書きしない

  • 困ってます
  • 質問No.4509481
  • 閲覧数11816
  • ありがとう数6
  • 気になる数1
  • 回答数2
  • コメント数0

お礼率 71% (53/74)

バッチファイルでXCOPYを実行し既存ファイルを上書きしないようにしたい(上書き確認を自動でNo返答する)さらに、存在しないファイルはコピーしたい
●構成
・C:\test\A\A.txt がある
・バッチファイルと同列に、A\A.txt 及び B.txt が存在
 さらにバッチファイルと同列に、からフォルダB が存在
●試したコマンド:
XCOPY * C:\test /E /-Y /Q < nul > nul
●結果:C:\test\A\A.txt は上書きされないが、B.txt 及びフォルダBがコピーされない
●求める結果:
C:\test\A\A.txt は上書きされず、コピー先に存在しないB.txt 及びフォルダBがコピーしたい

宜しくお願いいたします。
通報する
  • 回答数2
  • 気になる1
    質問をブックマークします。
    マイページでまとめて確認できます。

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

  • 回答No.2
レベル14

ベストアンサー率 45% (764/1671)

直接の回答とは少し異なりますが。
もしも、「存在するファイルは上書きしない」というのが、
「変更されていなければ上書きしない」
というレベルで良いのなら、

XCOPY /s/m * C:test

で可能です。

/m オプションは、アーカイブ属性のファイルのみ
コピーして、その時に、アーカイブ属性をクリアします。
アーカイブ属性自体は、ファイルが更新されたときにセット
されるので、結果的に、更新されたファイルだけコピー
することが出来ます。
お礼コメント
indigo45kk

お礼率 71% (53/74)

ありがとうございます。
投稿日時 - 2010-04-26 23:54:56

その他の回答 (全1件)

  • 回答No.1
レベル14

ベストアンサー率 49% (4249/8668)

他カテゴリのカテゴリマスター
上書き確認に対して、NULをリダイレクトしているので、YもNもAも入力されず、そこでコマンドが終わってしまいます。

簡単にやるには、N がたくさん並んだファイルを作りそれをリダイレクトで与えればいいでしょう。ファイルの個数が10000以下だとして、

(for /l %%A in (1,1,1000) do @echo NNNNNNNNNN)>%TEMP%\NNNNN
xcopy * C:\test /e /-y /q < %TEMP%\NNNNN
お礼コメント
indigo45kk

お礼率 71% (53/74)

ありがとうございます。
投稿日時 - 2009-08-31 00:59:58


このQ&Aで解決しましたか?
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,500万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-

特集


抽選で合計100名様にプレゼント!

ピックアップ

ページ先頭へ