ドライブ全体(d :)から別のドライブ(k :)への単純なバックアップ(ミラー)を実行しようとしています。ソース(d :)と宛先(k :)を定義する.batファイル( 'backup.bat')を作成し、このバッチファイルをdドライブのフォルダー(d:\ temp)に配置しました。バッチファイルをダブルクリックすると、バッチファイルで定義したものではなく、ソースをd:\ tempとして定義します。 d :.
.batファイルのテキストは次のとおりです。
@echo off
echo To begin backing up data:
pause
robocopy "D:" "K:" /L /v
echo.
pause
exit
これは、backup.batをダブルクリックしたときに表示されるものです
ご覧のとおり、ソースはd:\ tempとして定義されています。これがバッチファイルの場所ですが、バッチファイルではD:と定義しました。何らかの理由で、宛先が正しく定義されています。
何か案は?
-al
編集:「/」をソースと宛先の場所に追加すると、以下のコードを参照してください、さらに奇妙な動作が表示されます(スクリーンショットを参照)。これで、ソースは定義されたソースと宛先の両方になり、宛先なしになります。
@echo off
echo To begin backing up data:
pause
robocopy "D:\" "K:\" /L /v
echo.
pause
exit
そして、ソースと宛先から「」を削除すると…。
@echo off
echo To begin backing up data:
pause
robocopy D:\ K:\ /L /v
echo.
pause
exit
"D:"
を使用すると、Dドライブ(D:\
)のディレクトリrootディレクトリを指定しますnotですが、代わりに、Dのcurrentディレクトリ(例ではD:\temp
)。
この問題を解決するには、ソース仕様に\
を追加します(そこにある間、dest仕様にも追加します)。
robocopy d:\ k:\ /L /v
/E
オプションを使用します。 /copyall
経由で/ZB
/DCOPY:DAT
や/?
などの他の必要/有用なパラメーターも確認してください。