バックアップ バッチ ファイルを作成しようとしていますが、最後に作成してから数年が経過しており、少し問題が発生しています。
フォルダー名に日付と時刻を含むフォルダーを 1 つの場所に作成し、設定された場所からすべてのフォルダーとファイルをコピーしています。
バッチ ファイルは問題なくフォルダーを作成しますが、XCOPY で「パラメーターの数が無効です」というメッセージが表示されます。
現状のファイルは次のとおりです。
@echo off
for /f "delims=" %%a in ('wmic OS Get localdatetime ^| find "."') do set dt=%%a
set datestamp=%dt:~0,8%
set timestamp=%dt:~8,6%
set YYYY=%dt:~0,4%
set MM=%dt:~4,2%
set DD=%dt:~6,2%
set HH=%dt:~8,2%
set Min=%dt:~10,2%
set Sec=%dt:~12,2%
set stamp=Backup %DD%.%MM%.%YYYY% %HH%-%min%-%Sec%
set direc="f:\main accounts management\sagecompaniesbackup\%stamp%"
md %direc%
set fold="%direc%"
XCOPY "e:\SageCompanies\" %fold% /c/e/k/y
XCOPY のパラメータを一切指定せずに試してみましたが、それでも同じ問題が発生します。
誰かが私を助けてくれることを願っています。
答え1
修正方法はこちら
@echo off
for /f "delims=" %%a in ('wmic OS Get localdatetime ^| find "."') do set dt=%%a
set datestamp=%dt:~0,8%
set timestamp=%dt:~8,6%
set YYYY=%dt:~0,4%
set MM=%dt:~4,2%
set DD=%dt:~6,2%
set HH=%dt:~8,2%
set Min=%dt:~10,2%
set Sec=%dt:~12,2%
set stamp=Backup %DD%.%MM%.%YYYY% %HH%-%min%-%Sec%
set direc="f:\main accounts management\sagecompaniesbackup\%stamp%"
md %direc%
::Removed Double Quotes
set fold=%direc%
::Added Wildcard to fix invalid params
XCOPY "e:\SageCompanies\*" %fold% /c/e/k/y