@echo off title %~nx0 REM ################################################################################## REM * HD全ドライブのデフラグ状態をチェック REM http://www10.plala.or.jp/palm84/archives/commandline/backup/Check_Defrag.bat.txt REM https://eu7w9wsmf6a74xyjdfzl3q-on.drv.tw/archives/commandline/backup/Check_Defrag.bat.txt REM ################################################################################## REM ### UAC Check REM ##################################### set Policies=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System for /f "usebackq tokens=3" %%x in (`reg query %Policies% /v EnableLUA 2^>nul ^| findstr /i EnableLUA`) do set "EnableLUA=%%x" if "%EnableLUA%"=="0x1" ( if /i not "%cd%"=="%windir%\system32" GOTO UAC ) pushd %~dp0 echo: echo: echo ============================================================== echo !=== デフラグ === ドライブの断片化のチェックイタシマス echo ============================================================== echo: echo 続行しますか? 中断は xボタン or Ctrl-C echo: echo *** 何かキーを押すと実行します *** pause >nul echo: REM ##################################### REM ### ドライブ文字検索 REM ##################################### setlocal enabledelayedexpansion for %%x in (C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z) do ( reg query HKLM\SYSTEM\MountedDevices /v \DosDevices\%%x: >nul 2>nul if not ERRORLEVEL 1 ( dir /a/b >nul 2>nul %%x:\ && set "drive=%%x" && call :CHECK )) GOTO DONE REM ##################################### REM ### CHECK REM ##################################### :CHECK echo. echo ============================================================== echo * %drive%: ドライブ echo ============================================================== echo. defrag -a -v %drive%: if ERRORLEVEL 1 ( echo ------------------------------------------------- echo !CD やネットワークドライブはチェックできませぬ! echo ------------------------------------------------- ) echo. exit /b REM ##################################### REM ### UAC REM ##################################### :UAC echo: echo: echo: echo !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! echo: echo !「管理者として実行」してくださいマセ ! echo: echo *** 何かキーを押すと閉じます *** echo: echo !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! echo: pause >nul GOTO :EOF :DONE echo. echo ****************************************************************** echo ************ Done ! ************ echo ****************************************************************** echo ************ デフラグ実行は ************ echo ************ defrag ドライブ文字: ************ echo ****************************************************************** echo: echo *** 何かキーを押すと閉じます *** pause >nul