私は現在、フォルダAからファイルリストを読み取るバッチファイルを持っており、特定の日付を超えるとフォルダBにコピーして元のファイルを削除します。Windowsのバッチファイルバックアップ、ネストされたフォルダ/ファイルの再作成
問題は、バッチファイルがフォルダA内のファイル構造を再作成したいと思いますが、これを行う方法がわかりません。ここでは、コードです:
echo off
echo REM :- THE FOLLOWING FILES ARE OLDER THAN 7 DAYS AND CAN BE MOVED TO BACKUP -:
pause
forfiles /p c:\test\one /s /m *.gif /c "cmd /c dir /b/s/t:w @path"
echo.
echo REM :- CONTINUE TO MOVE THOSE FILES TO THE BACKUP LOCATION -:
pause
forfiles /p c:\test\one /s /m *.gif /c "cmd /c mkdir c:\test\two\@relpath"
echo.
pause
forfiles /p c:\test\one /s /m *.gif /c "cmd /c copy /-y @path c:\test\two\@relpath"
pause
echo.
echo REM :- THE FOLLOWING FILES EXIST IN THE BACKUP LOCATION -:
echo.
pause
dir "c:\test\two" /a/s/b /o:gn
echo.
echo REM :- CONTINUE TO DELETE THOSE BACKUPS -:
pause
rd /s "c:\test\two"
echo.
pause
問題は内部@relpathが自身の名前のフォルダ内の各ファイル名で終わるフォルダBIにおけるので、全体のパスとファイル名を取るように思われる(例えば「filename.gif」です同じ名前のフォルダ)。パスからファイル名を削除し、それに基づいてフォルダBのファイル構造を作成し、正しい場所にファイルをコピーするにはどうすればよいですか?
おかげ
ありがとうございました。とても役に立ちました。 – RingTailedLemur
すごくうれしいです。これがあなたの質問に答えたなら、あなたはそのダニをクリックして答えを受け入れることができます。 –