ファイルをコピーするためにリモート コンピューターにコマンドを送信しています。ファイルをコピーしたいが、同じ名前の以前のファイルを上書きしたくない (存在する場合)。また、コマンドをプロンプトなしで実行する必要もあります (xcopy は、指定したターゲット名がファイルかディレクトリかを確認するのが好きで、ファイルの上書きについても確認します)。
7 に答える
で良い結果が得られましxcopy /d
た。
新しいファイルをコピーします。既存のファイルのタイムスタンプは同じであると想定できるため、存在しないファイルのみをコピーします。
他の誰かがこれを見つけた場合に備えて: robocopy x:\sourcefolder Y:\destfolder /s /e /r:0 /z
xcopy よりもはるかに優れており、失敗したファイルやスキップされたファイルを通知するテーブルが最後に表示されます。上書きしないように促しません。
また、replace コマンドを使用することもできます。そこに存在しないファイルを追加するか、存在するファイルを置き換えるという 2 つのモードがあります。以前のモードが必要です:
replace <path1> <path2> /A
私の知る限り、上書きしないようにする方法はありません。ただし、/Yは上書きします。および/Iはfile/dictプロンプトを取り除きます。xcopy /?
すべてのオプションを見る
ファイルをコピーして名前を変更する必要があったため、ファイルまたはディレクトリの作成に関するプロンプトが表示されました。
これは、私が行ったかなり「ハックな」方法です。
ECHO F | XCOPY /D "C:\install\dummy\dummy.pdf" "C:\Archive\fffc810e-f01a-47e8-a000-5903fc56f0ec.pdf"
XCOPY は「F」を使用して、ターゲットをファイルとして作成する必要があることを示します。
C:\install>ECHO F | XCOPY /D "C:\install\dummy\dummy.html" "C:\Archive\aa77cd6e-1d19-4eb4-b2a8-3f8fe60daf00.html"
Does C:\Archive\aa77cd6e-1d19-4eb4-b2a8-3f8fe60daf00.html specify a file name or directory name on the target
(F = file, D = directory)? F
C:\install\dummy\dummy.html
1 File(s) copied
また、このコマンドが既存のファイルをそのままにしておくことも確認しました。(あなたもすべき :-)