- 437 名前:デフォルトの名無しさん mailto:sage [2016/01/20(水) 03:16:35.15 ID:CGJNTMJr.net]
- >>417
@echo off &setlocal REM USAGE: this.bat "folder1" "folder2" pushd "%~1" ||goto :eof popd pushd "%~2" ||goto :eof pushd .. set DTTM=%date:/=%%time: =0% set DTTM=%DTTM::=% set $TMP=$tmp%DTTM:~0,-3% move "%~2" %$TMP% xcopy /e /i /h /k /y /b %$TMP% "%~2\%$TMP%" rd /s /q %$TMP% for /f "delims=" %%A in ('dir /a:-d /b "%~1"') do if exist "%~2\%$TMP%\%%A" move "%~2\%$TMP%\%%A" "%~2\%%A" rem rd /s /q "%~2\%$TMP%" exit /b @echoからexitまでをコピーして拡張子をbatで保存 "folder1" "folder2" は同じディレクトリにあってそこをカレントディレクトリとして実行するならフォルダ名のみで可 そうでない場合はフルパスで指定 exitの前のrem rd /s /q "%~2\%$TMP%"をrd /s /q "%~2\%$TMP%"とrem消せばtmpフォルダが削除されるけど十分テストしてから消してね >フォルダ2に無いファイルをフォルダ2から消しても構いません フォルダ2のファイルのうちフォルダ1にあるものとファイル名が同一のもの以外を削除ってことよな? ファイルサイズが大きいなら該当ファイルだけtmpフォルダに移動させる仕様の方が処理が早い
|

|